prowebber.ru - Тут есть все для настоящих вебмастеров

Чтение RSS Мы в твиттере
«    Декабрь 2016    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

Всё для вебмастера » Всё для DataLife Engine » DLE хаки » Регистрация без ботов

Регистрация без ботов


Данный материал предоставлен сайтом ProWebber.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
У нас вы можете скачать бесплатно Регистрация без ботов.


Регистрация без ботов

Версии DLE: 8.x

Лирика: Все мы знаем - ссылки регистрации не прячутся под ЧПУ (независимо от настройки ЧПУ), что, конечно, некрасиво, но терпимо, но вот то, что об этом осведомлен каждый тупой бот - вызывает гораздо больше раздражений...

Описание: Данный хак позволяет не только скрыть все ссылки регистрации под ЧПУ, но и обезопасить себя от ботов.

Действий немного. Начнем:

!!!ВНИМАНИЕ!!!
В данном примере к ссылкам регистрации будет добавлено значение "_999", которое можно изменить в зависимости от фантазии, но обязательно по всему тексту хака.



1. В файле .htaccess, после строчки:
RewriteEngine On


Вставить:
#Регистрация без ботов
RewriteRule ^register(/?)+$ index.php?do=register_rtiavto [L]
RewriteRule ^register/validating/(.*)(/?)+$ index.php?do=register_rtiavto&doaction=validating&id=$1 [L]
RewriteRule ^register/validating/nextstep/(.*)(/?)+$ index.php?do=register_rtiavto&doaction=validating&step=2&id=$1 [L]




2. В файле \engine\init.php,
I. вместо строчки:
$link_regist = ($config['ajax']) ? $PHP_SELF . "?do=register" onclick="DlePage('do=register'); return false;" : $PHP_SELF . "?do=register";


Вставить:
$link_regist = ($config['ajax']) ? $config['http_home_url'] . "register/" onclick="DlePage('do=register_999'); return false;" : $config['http_home_url'] . "register/";



II. вместо строчки:
$link_regist = ($config['ajax']) ? $PHP_SELF . "?do=register" onclick="DlePage('do=register'); return false;" : $PHP_SELF . "?do=register";


Вставить:
$link_regist = ($config['ajax']) ? $PHP_SELF . "?do=register_999" onclick="DlePage('do=register_999'); return false;" : $PHP_SELF . "?do=register_999";




3. В файле \engine\engine.php
I. вместо строки:
case "register" :


Вставить:
case "register_999" :



II. вместо строки:
elseif ($do == 'register') $nam_e = $lang['title_register'];


Вставить:
elseif ($do == 'register_999') $nam_e = $lang['title_register'];




3. В файле \engine\modules\register.php
I. вместо строки:
$row['template'] = str_replace( "{%validationlink%}", $config['http_home_url'] . "index.php?do=register&doaction=validating&id=" . $idlink, $row['template'] );


Вставить:
$row['template'] = str_replace( "{%validationlink%}", $config['http_home_url'] . "register/validating/{$idlink}/" , $row['template'] );



II. вместо строки:
$tpl->copy_template = "<form  method="post" name="registration" onsubmit="if (!check_reg_daten()) {return false;};" id="registration" action="" . $config['http_home_url'] . "index.php?do=register">n" .
tpl->copy_template . " <input name="submit_reg" type="hidden" id="submit_reg" value="submit_reg" /> </form>";


Вставить:
$tpl->copy_template = "<form  method="post" name="registration" onsubmit="if (!check_reg_daten()) {return false;};" id="registration" action="" . $config['http_home_url'] . "register/">n" .
$tpl->copy_template . " <input name="submit_reg" type="hidden" id="submit_reg" value="submit_reg" /> </form>";


III. вместо строки:
msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href="" . $config['http_home_url'] . "index.php?do=register&doaction=validating&step=2&id=" . rawurlencode( $_REQUEST['id'] ) . "">" . $lang['reg_next'] . "</a>" );


Вставить:
msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href="" . $config['http_home_url'] . "register/validating/".rawurlencode($_REQUEST['id']) . "/nextstep/" . "">" . $lang['reg_next'] . "</a>" );



IV. вместо строки:
<input name="do" type="hidden" id="do" value="register" />;


Вставить:
<input name="do" type="hidden" id="do" value="register_999" />;




4. В файле \engine\modules\static.php
I. вместо строки:
if( $_GET['page'] == "dle-rules-page" ) if( $do != "register" ) {


Вставить:
if( $_GET['page'] == "dle-rules-page" ) if( $do != "register_999" ) {



II. вместо строки:
$tpl->set( '{ACCEPT-DECLINE}', "<form  method="post" name="registration" id="registration" action="" . $config['http_home_url'] . "index.php?do=register"><input type="submit" class="bbcodes" value="{$lang['rules_accept']}" />&nbsp;&nbsp;&nbsp;<input type="button" class="bbcodes" value="{$lang['rules_decline']}" onclick="history.go(-1); return false;" /><input name="dle_rules_accept" type="hidden" id="dle_rules_accept" value="yes" /></form>" );


Вставить:
$tpl->set( '{ACCEPT-DECLINE}', "<form  method="post" name="registration" id="registration" action="" . $config['http_home_url'] . "register/"><input type="submit" class="bbcodes" value="{$lang['rules_accept']}" />&nbsp;&nbsp;&nbsp;<input type="button" class="bbcodes" value="{$lang['rules_decline']}" onclick="history.go(-1); return false;" /><input name="dle_rules_accept" type="hidden" id="dle_rules_accept" value="yes" /></form>" );




Идем по ссылке http://www.sitename.ru/register/ и наслаждаемся результатом.

Проверено на версии 8.5, но будет работать и на более ранних.
Всем спасибо и удачи!


0
Просмотры: 5691 VIP ProWebber | Комментарии (12)
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#1Bagner

  • 22 апреля 2010 08:03
  • Регистрация: 27.11.2009
  • ICQ: --
  • Комментариев: 308
Это как раз то что надо для варезняков ))))

--------------------

0

#2garri83

  • 22 апреля 2010 09:10
  • Регистрация: 27.11.2009
  • ICQ: --
  • Комментариев: 30
Буду пробовать может поможет.

0

#3kaybox

  • 22 апреля 2010 09:12
  • Регистрация: 1.02.2010
  • ICQ: --
  • Комментариев: 57
а не проще добавить дополнительный вопрос и всё

0

#4Roma17

  • 22 апреля 2010 09:41
  • Регистрация: 6.12.2009
  • ICQ: --
  • Комментариев: 187
Цитата: kaybox
а не проще добавить дополнительный вопрос и всё


ТЫ добавиш вопрос разработчики софта добавят програме распознавание поля -)

0

#5kaybox

  • 22 апреля 2010 10:07
  • Регистрация: 1.02.2010
  • ICQ: --
  • Комментариев: 57
Roma17,
так а если добавить много вопросов? сколько читал комментов говорят что помогает доп вопрос, себе пока не ставил т.к. пока наплыва вроде нету роботов

0

#6pernatik

  • 25 апреля 2010 08:33
  • Регистрация: 4.02.2010
  • ICQ: 907089
  • Комментариев: 122
Лучше капчу поставить продвинутую (точнее сказать легче)

0

#7Fred777

  • 9 мая 2010 13:01
  • Регистрация: 13.03.2010
  • ICQ: --
  • Комментариев: 3
Спасибо, хороший способ. Но есть и лучше.

0

#8JakeNigga

  • 16 мая 2010 17:36
  • Регистрация: 12.05.2010
  • ICQ: --
  • Комментариев: 3
нихуя не работает!

Из-за вас сейчас надо три часа сидеть заново на место всё ставить! mad
new_russian

Original: Huxy9I He Pa6oTaeT !!!!!
Translate: ( Нихуя не работает! )

beee beee beee beee beee beee beee
beee beee beee beee beee beee beee




Parse error: syntax error, unexpected T_STRING in /home/мой_сайт/domains/m-soml.com/public_html/engine/init.php on line 326
Вот что вылазит! Я не заменя _999
Строчка №326 выглядит так:


$link_regist = ($config['ajax']) ? $config['http_home_url'] . "register/"

0

#9nsdss

  • 16 мая 2010 17:46
  • Регистрация: 10.01.2010
  • ICQ: --
  • Комментариев: 457
JakeNigga, Вообще-то всегда
нужно сохранять копии. У меня, например тоже не пошел хак, так как изменений много уже внесено, но я, как взравомыслящий человек, предварительно сделал дамп изменяемых файлов.

--------------------

0

#10JakeNigga

  • 16 мая 2010 17:47
  • Регистрация: 12.05.2010
  • ICQ: --
  • Комментариев: 3
onclick="DlePage('do=register_999'); return false;" : $config['http_home_url'] . "register/";
что не так?

0

#11fasol

  • 2 декабря 2010 17:53
  • Регистрация: 31.01.2010
  • ICQ: --
  • Комментариев: 77
JakeNigga, об стену вымазанную ядом!

Тебе английским языком написано: syntax error, unexpected T_STRING = ошибка синтаксиса, неопознанный элемент.

Кавычку последнюю нахрена экранировал?

0

#12qttqttq22

  • 18 мая 2011 20:14
  • Регистрация: 13.12.2010
  • ICQ: --
  • Комментариев: 15
ну что тут поделаешь глупенький он ахах biggrin

0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.

Max-energy.top - Заработок на электросчетчиках;)

Skripters.info - все для вебмастера. Только эксклюзивный контент.

Создание шаблонов DLE, быстро и недорого! 3wave.com.ua

Бро лей на лучшую партнёрку

Почти бесплатный VDS хостинг!

Создание сайта коломна

Агентство недвижимости. Система поиска по рубрикам, районам, городам.

ener.ru


Руторг зеркало

В продаже - зеркало, цены ниже! Неликвидные остатки

mrutor.org


Поддержи сайт
Скрипты, cms, шаблоны, статьи по раскрутке

Опросы

Как часто вы бываете на сайте?

Захожу 1-2 раза в день
1-2 часа в сутки
Более 2 часов
Почти целый день тут smile

Архив новостей
Ноябрь 2016 (7)
Октябрь 2016 (10)
Сентябрь 2016 (8)
Август 2016 (11)
Июль 2016 (14)
Июнь 2016 (17)

Последние комментарии:

Искать людей

Ваши переписки