линия

Главная

вторник, 17 апреля 2018 г.

Bitrix - простая защита от спама

Есть такая профессия - спамить. Спамеры и их приспешники спам роботы напрочь лишены совести.  Как только нащупают на морде сайта форму обратной связи тут же начинают слать некому ненужные сообщения об увлечения , укрепления мужского органа или же быстрый способ заработать бабосиков. Это раздражает. Еще сильнее раздражает если это твой сайт.
В одно время на все сайты под управлением старины Bitrix  посыпались дружно письма сомнительного содержания. Методом дедуктивного анализа  пришел к  весьма логическому выводу. Взломали, взломали капчу, ублюдки лишь промолвил я. Менять капчу не было никакого желания. Хотелось  некой функции, которую копируешь один раз и он сразу же спамеров посылает на хрен. И дабы не терять времени быстренько накидал эту саму фугкцию.






Итак, ближе к делу.
Открываем bitrix/php_interface/init.php , если нет до создаем файл.
И туда вставляем это:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<?
AddEventHandler("iblock", "OnBeforeIBlockElementAdd", Array("MyClass", "OnBeforeIBlockElementAddHandler"));
class MyClass{
    // создаем обработчик события "OnAfterIBlockElementAdd"
    function OnBeforeIBlockElementAddHandler(&$arFields){
 //Если инфоблок Отзывов
        if($arFields["IBLOCK_ID"] == 22){
   if(  preg_match("/^[a-zA-Zа-яА-Я0-9_ ,.;?:()]+$/i", $arFields["PREVIEW_TEXT"])){  
   //все ок.
   return true;   
   }else{
    global $APPLICATION;
          $APPLICATION->throwException("Разрешены только цифры, буквы и знаки препинания(, . : ; )");
    return false;   
   }  
  }
    }
}

В итого получаем вот такую запись. Эх, увидеть бы их наглые рожи в этот момент...

Вот и все.
Ну, напоследок несколько приколов собственной выдачи





Комментариев нет:

Отправить комментарий