Cегодня мы поговорим про насущную проблему «СПАМ». Способ решения данной проблемы позволит избавиться от спама на форме обратной связи, спам на комментарии или же спам на заказы в интернет магазине.
Хотелось бы сразу отметить плюсы и минусы данного способа:
- Хорошо работает против ботов.
- Быстрая установка в форму отправки сообщений
- Минимум кода ( 3 строчки)
- Не требует особых знаний, за исключением расположения основных файлов.
- Минус: Пользователи у которых не стоит java не смогут пройти проверку и следовательно отправить сообщение.
В принципе все. Приступим к установке:
- Добавим дополнительное скрытое поле в вашу форму ( это форма комментария, форма обратной связи, форму заказа товара ) с именем name=»check» значение value=»» оставляем пустым. Пример:
- В той же форме но только в кнопке ( «отправить», «написать», «Оставить отзыв» или как она у вас называется) добавляем следующий код:
- Далее идем в php скрипт, который выполняет проверку вашей формы и вносим в него следующий код:
if ($_POST['check'] != 'stopSpam') exit('Spam decected');
Защита от спама — принцип действия
Принцип прост до не возможности как и сам код. Рассчитан он на то, что спам-боты не умеют выполнять программы на JavaScript. В то время когда обычный пользователь нажмет на кнопку «заказать» в наше скрытое поле, впишется слово «stopSpam», а в случае с роботом это поле останется пустым. Поясню данный момент, почему он останется пустым?. Робот заполняет все поля кроме нашего скрытого поля с идентификатором id=»check» и переменная «check» останется не заполненной, следовательно почта не будет отправлена. А при нажатии на кнопку пользователем выполнится наш JavaScript, который мы добавили в кнопку.
Cоветую использовать данный метод совместно с капчей, эффект будет лучше. Ну вот собственно и все. Если статья помогла вам, пишите комментарии, репостите и не забывайте сказать «Спасибо» в комментариях.
Если у кого-то возникают другие проблемы или же вопросы оставляйте их в комментариях, мы с радостью найдем решение вместе. Ждем ваших сообщений!