Всех ведь достали спамеры ? Попробуем усложнить им этап регистрации для распространения спама.
1. Открываем файл engine/modules/register.php и ищем в нём:
if( $sec_code != $sec_code_session or ! $sec_code_session ) $stop .= $lang['reg_err_19']; после этого вставляем:
if(empty($_POST['mark'])){ $stop .= "Выберите кружок!"; } else { if($_POST['mark'] != $_SESSION['codes']){ $stop .= "Выбран Неверный кружок! Ботам тут не место!!! :)"; } }
2. Далее ищем :
if( $doaction != "validating" and ! $stopregistration ) { if( $_POST['dle_rules_accept'] == "yes" ) { @session_register( 'dle_rules_accept' ); $_SESSION['dle_rules_accept'] = "1"; } после вставляем:
// $mark = mt_rand(1,7); $marks = array ("Первый" => "1", "Второй" => "2", "Третий" => "3", "Четвёртый" => "4", "Пятый" => "5", "Шестой" => "6", "Седьмой" => "7"); $marks_check = array_search($mark, $marks); // $_SESSION['codes'] = $mark;
3. Ищем:
if( $config['allow_sec_code'] == "yes" ) { $tpl->set( '[sec_code]', "" ); $tpl->set( '[/sec_code]', "" ); $tpl->set( '{reg_code}', "{$lang['reload_code']}" ); Прямо перед
} else {, вставляем:
$tpl->set( '{mark}', "$marks_check" );
4. Ищем:
} else { $tpl->set( '{reg_code}', "" ); после вставляем:
$tpl->set( '{mark}', "" );
5. Открываем файл templates/Ваш шаблон/registration.tpl и между тегами [/sec_code] и [/registration], вставляете:Дополнительная защита от спамеров
Если вы Человек, то выберите {mark} кружок! Выберите кружок: 1 2 3 4 5 6 7
Поддержка Работа с различными CMS DataLife Engine
Должно помочь.
|