Хак DLE 10.0 Грамматический Антибот

Рубрика: Хаки для DLE » Хак DLE 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8, 9.7, 9.6, 9.5, 9.4, 9.3, 9.2, 9.0
Хак DLE 10.0 Грамматический Антибот
С легкой установкой хак DLE 10.0 Грамматический Антибот, предоставлен для всех даром, при этом идея абсолютна уникальна, можно добавить неограниченное количество слов с возможностью кастомизации своей фантазией. У данного метода есть минус, бот написанный конкретно под данную капчу со временем легко будет ее обходить. Автор идеи Sander.

Новый вариант анитибот (капча) основан на исправление ошибок в словах, представляем хак dle 10.0 грамматический Антибот, основная суть данной реализации навеяна, как ни печально, безграмотностью аудитории интернета. Основанная задача антибота в том, чтобы человек при ответе в комментарии или для завершения процедуры регистрации вписал грамотно слово, без ошибки. Если вас это интересует? Тогда читаем дальше.
Сразу отмечу плюсы и минусы данного метода:
+ даром :)
+ простая установка :)
+ уникальность идеи
+ неограниченный объем слов
+ возможность кастомизации своей фантазией
[-] бот написанный конкретно под данную капчу со временем легко будет ее обходить

Перейдем к установке:
1) Открыть файл engine/modules/antibot.php и найти строку:

$im = new genrandomimage();


ПЕРЕД ней вставить:

$wordarr =<<<HTML
вообщем|в общем
вобще|вообще
мужык|мужик
джып|джип
ворабей|воробей
отабражение|отображение
машына|машина
HTML;

$wordarr = explode("\n",trim($wordarr));
$words = array();
foreach($wordarr as $k=>$v){
	$v = trim($v);
	if($v){
		$v = explode("|",$v);
		if(count($v)>1){
			$v[0] = trim($v[0]);
			$v[1] = trim($v[1]);
			if($v[0] AND $v[1]) $words[] = array($v[0],$v[1]);
		}
	}
}
shuffle($words);
$_SESSION['sec_code_session'] = $words[0][1];
echo $words[0][0];


2) Открыть файл шаблона, где выводится капча, например register.tpl
Здесь придет прием для стандартного шаблона, найти:

<tr>
			<td class="label">
				Введите код<br />с картинки:<span class="impot">*</span>
			</td>
			<td>
				<div>{reg_code}</div>
				<div><input type="text" name="sec_code" style="width:115px" class="f_input" /></div>
			</td>
		</tr>

Вместо него вставить:

<tr>
			<td class="label">
				Исправьте ошибку<br />в слове:<span class="impot">*</span>
			</td>
			<td>
				<span id="cap-word-error"></span> <a href="#" onclick="aworderr();return false;">другое слово</a>
				<div><input type="text" maxlength="45" name="sec_code" style="width:115px" class="f_input" /></div>
				<script>
					function aworderr(){$.get(dle_root+"engine/modules/antibot.php",function(d){$("#cap-word-error").html(d)})}
					aworderr();
				</script>
			</td>
		</tr>


Таким же способом можно вставить антонимы с исправлениями грамматики, в общем на что вашей фантазии хватит, чем больше слов вы допишите - тем лучше.

С уважением,
Олег Александрович a.k.a. Sander
Версия движка: DataLife Engine 9.x-10.x

Советуем скачать хаки для dle, как хак для dle грамматический Антибот
  • 80
Рубрика: DLE хаки
Ранее » Хак DLE Ссылки на следующую и предыдущую новость« Далее Доп поле DLE 10.0 Multi XFields 1.1
Добавление комментарияОставить комментарий