Чтение RSS каналов

Форум

Открыть Ответить

ХАК регистрации для защиты от ботов

5

5
1
19.12.2017 08:01:3219.12.2017 08:08:11

Приветствую! Это продолжение темы https://slaed.net/index.php?name=forum&op=view&id=15579

Выкладываю вам мою реализацию. Правки в админке подойдут для любых версий системы, потому что там добавляются только поля по сути. В модуле Аккаунт не привязывал к какой либо версии. На вопросы постараюсь ответить.

АРХИВ С ХАКОМ


дублирую:
СЕКРЕТНОЕ ПОЛЕ ДЛЯ SLAED
/////////////////////////////////////////////////////////////////////////////////////////////////////
admin/modules/USERS.PHP
Находим строку функции function users_conf()
В ней добавляем поля после строки с содержимым ."<tr><td>"._MAIL_BLOCK....

."<tr><td>"._USR_SF_ACT."</td><td>".radio_form($confu['usrsf'], "usrsf")."</td></tr>"
	."<tr><td>"._USR_SF_CLASS.":</td><td><input type=\"text\" name=\"usrsf_class\" value=\"".$confu['usrsf_class']."\" class=\"sl_conf\" placeholder=\""._USR_SF_CLASS."\" required></td></tr>"
	."<tr><td>"._USR_SF_NAME.":</td><td><input type=\"text\" name=\"usrsf_name\" value=\"".$confu['usrsf_name']."\" class=\"sl_conf\" placeholder=\""._USR_SF_NAME."\" required></td></tr>"


Находим строку функции function users_save()
В ней находим строку с содержимым $cont = array('anonym' => $_POST['anonym'], 'adirectory' => $_POST['adirectory'],...
В конец перед закрывающей скобкой добавляем:
, 'usrsf' => $_POST['usrsf'], 'usrsf_class' => $_POST['usrsf_class'], 'usrsf_name' => $_POST['usrsf_name']




/////////////////////////////////////////////////////////////////////////////////////////////////////
modules/account/INDEX.PHP
Находим строку функции function newuser()
Там находим форму регистрации.
Перед формой регистрации:
if (!empty($confu['usrsf'])) {
		//$confu['usrsf_class']
		$usf_cl_exp = explode(",", $confu['usrsf_class']);
		$usf_cl_count = count($usf_cl_exp);
		$usf_cl = $usf_cl_exp[mt_rand(0, $usf_cl_count-1)];
				
		//$confu['usrsf_name']
		$usf_nm_exp = explode(",", $confu['usrsf_name']);
		$usf_nm_count = count($usf_nm_exp);
		$usf_nm = $usf_nm_exp[mt_rand(0, $usf_nm_count-1)];
				
		$usf_chk = array();
		foreach ($usf_nm_exp as $usf_v) {
			if (!empty($_POST[$usf_v])) $usf_chk[] = 1;
		}
	}


В форме регистрации добавляем:
.(!empty($confu['usrsf']) ? "<input type=\"text\" class=\"".$usf_cl."\" name=\"".$usf_nm."\" value=\"\">" : "")



Находим строку функции function finnewuser()
Там к прочим условия проверок и определения типов ошибок добавляем:
if (!empty($confu['usrsf'])) {
		//$confu['usrsf_name']
		$usf_nm_exp = explode(",", $confu['usrsf_name']);
		$usf_chk = array();
		foreach ($usf_nm_exp as $usf_v) {
			if (!empty($_POST[$usf_v])) $usf_chk[] = 1;
		}
		if (!empty($usf_chk)) $stop .= _USR_SF_ERR."<br />";
	}




/////////////////////////////////////////////////////////////////////////////////////////////////////
ЯЗЫКИ
define("_USR_SF_ACT","Использовать секретное поле при регистрации?");
define("_USR_SF_CLASS","Название стиля (.класса) для секретного поля. Можно несколько через запятую.");
define("_USR_SF_NAME","Имя секретного поля. Желательно несколько через запятую.");
define("_USR_SF_ERR","Дальнейшие действия невозможны.");



И замечу, что классы для секретного поля в файле стилей нужно прописать самостоятельно, задав им атрибут скрытого элемента.

ЗЫ
Подсветка синтаксиса режет квадратные скобки. Лучше скачайте файл с кодом...



Версия системы: SLAED CMS 6.* Pro
Версия PHP: 5
Сервер: Сервер в интернете

Здесь молодость бродит крылато, и старость не клонит голов.
4.2

4.2
2
19.12.2017 20:21:00

Большое спасибо!
Интересное а главное полезное решение, думаю пригодится многим.


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
3
20.12.2017 07:11:47

Не за что) Может коряво все расписал, но, думаю, разобраться не сложно )
Небольшой вклад в проект ;)


Здесь молодость бродит крылато, и старость не клонит голов.
4.2

4.2
4
21.12.2017 14:03:24

Спасибо

4.01

4.01
5
21.12.2017 15:19:10

Смайл - 13

PS
Вкусовщина конечно, но смайлы бы более попсовые поставить)


Здесь молодость бродит крылато, и старость не клонит голов.
4.2

4.2
6
22.12.2017 21:12:36

но смайлы бы более попсовые поставить

Есть интересные примеры?


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
7
23.12.2017 20:04:47

Вот: смайлы


Здесь молодость бродит крылато, и старость не клонит голов.
4.2

4.2
8
23.12.2017 20:07:23

7-Zip не может распаковать архив, пишет что битый.


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
9
23.12.2017 20:08:09

он винраром запакован


Здесь молодость бродит крылато, и старость не клонит голов.
4.2

4.2
10
23.12.2017 21:52:3223.12.2017 21:52:49

Обновил архиватор 7-Zip до версии 16.04, распаковал нормально.
Подобный пакет смайлов есть в нашем архиве файлов.


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
3.24

3.24
Открыть Ответить
Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь