Форум вебмастера


   
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Прячем регистрационные ссылки под чпу
ZyXELДата: Пятница, 18.02.2011, 13:54 | Сообщение # 1
Логин: ZyXEL
Сообщений: 80
Награды: 0
Репутация: 0
Замечания: 0%
:-)
Данный хак дает возможность спрятать ссылки регистрации под чпу, как всем известно стандартным функционалом движка ссылки для регистрации на сайте под ЧПУ не прячутся.
Для чего это надо? В первую очередь конечно для защиты от спам ботов автоматической регистрации, ну и я думаю у многих найдутся другие причины поставить данный хак к себе на сайт.
Итак начнем :
1. В файле .htaccess, после строчки:

Code
RewriteEngine On


Вставить:

Code
#register  
RewriteRule ^register(/?)+$ index.php?do=register [L]  
RewriteRule ^register/validating/(.*)(/?)+$ index.php?do=register&doaction=validating&id=$1 [L]  
RewriteRule ^register/validating/(.*)/nextstep(/?)+$ index.php?do=register&doaction=validating&step=2&id=$1 [L]

2. В файле engine/modules/static.php, ищем строки:

Code
} else {  
$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']}" />   <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>" );  
}

Заменяем на:
Code
} else {  
//edit by FB  
if( $config['allow_alt_url'] == "yes" )  
$url = $config['http_home_url'].'register/';  
else  
$url = $config['http_home_url'].'index.php?do=register';  

$tpl->set( '{ACCEPT-DECLINE}', "<form method="post" name="registration" id="registration" action="{$url}"><input type="submit" class="bbcodes" value="{$lang['rules_accept']}" />   <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>" );  
//  
}  

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

Заменяем на:  

//edit by FB  
if( $config['allow_alt_url'] == "yes" )  
$url = $config['http_home_url'].'register/validating/{$idlink}/';  
else  
$url = $config['http_home_url'].'index.php?do=register&doaction=validating&id='.$idlink;  

$row['template'] = str_replace( "{%validationlink%}", $url, $row['template'] );  
//  
<

ищем строки:

Code
$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>";

Заменяем это на:

Code
//edit by FB  
if( $config['allow_alt_url'] == "yes" )  
$url = $config['http_home_url'].'register/';  
else  
$url = $config['http_home_url'].'index.php?do=register';  

$tpl->copy_template = "<form method="post" name="registration" onsubmit="if (!check_reg_daten()) {return false;};" id="registration" action="{$url}">n" . $tpl->copy_template . "  
<input name="submit_reg" type="hidden" id="submit_reg" value="submit_reg" />  
</form>";  
//

Ну и на последок, ищем строку:

Code
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>" );

Заменяем на:

Code
//edit by FB  
if( $config['allow_alt_url'] == "yes" )  
$url = $config['http_home_url'].'register/validating/'.rawurlencode($_REQUEST['id']).'/nextstep/';  
else  
$url = $config['http_home_url'].'index.php?do=register&doaction=validating&step=2&id='.rawurlencode($_REQUEST['id']);  
msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href="{$url}">" . $lang['reg_next'] . "</a>" );  
//


Далбаеб
  • Страница 1 из 1
  • 1
Поиск:



TheGames.3dn.Ru© 2010-2011

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

Хостинг от uCoz

TheGames.3dn.Ru