DLE — защита от регистрации ботов с помощью чекбокса

DLE — защита от ботов установкой чекбокса
DLE — защита от ботов установкой чекбокса

Когда-то экспериментировал со скрытием файла капчи от ботов, но нашел совсем иной способ защиты. А на этот раз еще одно нехитрое решение

Откопал в сети еще один занятный способ защиты от автоматической регистрации ботов. Метод основан на том, что боты, как хочется верить, не умеют ставить галочки, а лишь заполняют формы. А мы как раз и добавим такую галочку…

Для завершения регистрации нужно будет отметить поле просто щелкнув по нему. Если этого не сделать, то скрипт бьет ошибку и обрывает регистрацию.

DLE — защита от ботов установкой чекбокса

DLE — защита от ботов установкой чекбокса

Шаблон register.tpl

Открываем файл шаблона registration.tpl и внутрь метатегов:

[registration]
<!-- code -->
[/registration]

добавляем следующий код:

<input type="checkbox" name="checkbot" value="1">
DLE — редактирование шаблона страницы регистрации
DLE — редактирование шаблона страницы регистрации

PHP Модуль register.php

Открываем engine/modules/register.php и примерно на 30-40 строке находим начало функции:

function check_reg($name, $email, $password1, $password2, $sec_code = 1, $sec_code_session = 1) {
	global $lang, $db, $banned_info, $relates_word, $config;
	$stop = ""; 

и сразу под этим кодом вставляем следующий:

if (!$_POST['checkbox']){	

	    $stop .= "<li>Проверка на бота не пройдена</li>";
	
	}
 DLE — редактирование php модуля регистрации
DLE — редактирование php модуля регистрации

Новости от партнеров

Комментарии

  1. @devarts пишет:
    22.01.2017 в 22:49

    Цитата: raid
    не работает с подтверждением регистрации по почте — после подтверждения ссылки выдает эту же ошибку про непрохождение проверки на бота

    Вы точно все правильно сделали? Не должно оно себя так вести

  2. @raid пишет:
    22.01.2017 в 13:26

    не работает с подтверждением регистрации по почте — после подтверждения ссылки выдает эту же ошибку про непрохождение проверки на бота

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *