[MOD] Улучшенная Регистрация(Improved Registration) - StressWeb[все версии] - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Движки сайтов (CMS)

Движки сайтов (CMS)
Обсуждения, решения проблем веб обвязок для ява сервера.

Описание темы:Мод улучшенной регистрации для SW всех версий

Ответ
Опции темы
Непрочитано 06.01.2013, 01:05   #1
Эксперт

Автор темы (Топик Стартер) [MOD] Улучшенная Регистрация(Improved Registration) - StressWeb[все версии]

Делал на заказ для одного сервера, но мне так и не заплатили, поэтому шарю со спокойной душой, хоть скриптик и совсем маленький, зато удобный и избавляет от лишней головной боли а-ля
"ааа!!! админ с%ка я забыл префикс!!!".

Описание
1. При регистрации появляется дополнительная кнопка

при нажатии на которую красиво генерируется пароль.

2. После регистрации на компьютер качается файл

Опционально, можно качать принудительно, либо только при клике на кнопку.




Собственно пример можно посмотреть прямо у моих заказчиков:
http://aceworld.ru/index.php?f=register


Установка

1. Создать в корне файл reg_dl.php со следующим содержимым:
PHP код:
<?
//Enchanced Registration by ReaM
//(c) http://forum.zone-game.info/showthread.php?t=25520
$servername "ServerName.ru";
$login $_POST['login'];
$pass $_POST['pass'];
$email $_POST['email'];
$Data ""//сюда можно вставить красивую надпись в ASCII, не забываем про \n\t
$Data .= "Игровой сервер ".$servername ."!\n\t
Данные Авторизации\n\r\t
"
;

$Data .= "Ваш Аккаунт: ".$login."\n\t
"
;

$Data .= "Ваш пароль: ".$pass."\n\t
"
;

$Data .= "Ваш e-mail: ".$email."\n\t
"
;

$Data .= "Храните эти данные в надежном месте!
"
;

if(isset(
$_SERVER['HTTP_USER_AGENT']) and strpos($_SERVER['HTTP_USER_AGENT'],'MSIE'))
Header('Content-Type: application/force-download');


else
Header('Content-Type: application/octet-stream');




Header('Accept-Ranges: bytes');

Header('Content-Length: '.strlen($Data));

Header('Content-disposition: attachment; filename="'.$servername.'-'.$login.'.txt"');

echo 
$Data;

exit();
//Enchanced Registration by ReaM
//(c) http://forum.zone-game.info/showthread.php?t=25520
?>
Сгенерировать красивую надпись в ASCII можно тут:
http://www.network-science.de/ascii/

2. Добавляем на самый верх register.tpl следующий код:
Код HTML:
<script type="text/javascript">

                        function getPass( obj,obj2 ){

                            var i, interval, words = "";

                            words += "qwertyuiopasdfghjklzxcvbnm";

                            words += "QWERTYUIOPASDFGHJKLZXCVBNM";

                            words += "1234567890";

                            ( obj = document.getElementById( obj ) ).value = "";

                            ( obj2 = document.getElementById( obj2 ) ).value = "";

                            var new_word_timeout = 100; // время между появлением новых букв.

                            var word_timeout = 10; // время между сменой букв

                            var word_count = 10; // количество букв

                            if( arguments.length > 1 ){

                                word_count = parseInt( arguments[2], 10 );

                            }

                            new function(){

                                this.getNextWord = function(){

                                    obj.value += " ";

                                    obj2.value += " ";

                                }

                                this.getWord = function(){

                                    obj.value =

                                        obj.value.substring( 0, obj.value.length - 1 ) +

                                            words.charAt( getRand( 0, words.length -1 ) )

                                    ;

                                    obj2.value = obj.value;

                                }

                                this.stop = function(){

                                    clearInterval( interval );

                                }

                                for( i = 0; i < word_count; i ++ ){

                                    setTimeout( this.getNextWord, i * new_word_timeout );

                                }

                                interval = setInterval( this.getWord, word_timeout );

                                setTimeout( this.stop, new_word_timeout * word_count );

                            }

                        }

                        function getRand( min, max ){

                            return Math.round( Math.random( ) * ( max - min ) ) + min;

                        }



                        function set_readonly_state(obj3, obj4) {

                            document.getElementById(obj3).removeAttribute('readonly');

                            document.getElementById(obj4).removeAttribute('readonly');

                        }

                        // -->

                    </script>
3. Заменяем в register.tpl
Код HTML:
<tr>
	<td class="tdLeft">Пароль:<br><span class="description">(От 6 до 16 символов)</span></td>
  	<td class="tdRight"><input type="password" name="l2password1" maxlength="16" class="input"></td>
</tr>
на

Код HTML:
<tr>
	<td class="tdLeft">Пароль:<br><span class="description">(От 6 до 16 символов)</span></td>
  	<td class="tdRight"><input type="text" name="l2password1" maxlength="16" class="input" id="l2password1">
			<a href="#" onclick="getPass( 'l2password1','l2password2', 8 ); this.blur(); return false;"><img height="17" width="16" onmouseup="this.src='../ff-genpwd.gif'" onmousedown="this.src='../ff-genpwd-a.gif'" class="input-img" src="../ff-genpwd.gif" alt ="Сгенерировать пароль"></a>

	
	</td>
</tr>
<tr>
<td colspan = "3"><center>
<font color="#3CAA3C">(рекомендуем <a href="#" onclick="getPass( 'l2password1','l2password2', 8 ); this.blur(); return false;">сгенерировать автоматически</a>)</font>
</center>
</td>
</tr>
4. В файле /application/register.php после

PHP код:
  if ( !$l2cfg["reg_activate"] ) {
                        
$ldb[$lid]->SuperQuery$qList[$vls]["insAccount"], array("login" => $_login"pass" => $_pass"l2email" => $_l2email) );
                        if ( 
$ldb[$lid]->affected() == ) { 
добавить

PHP код:
$lang["reg_err_8"] .= '<script>
function subm() {
document.forms[\'form1\'].submit();
}
setTimeout(subm, 1000); // 1000 = 1 секунда
</script>

<!-- Enchanced Registration by ReaM -->
<!-- http://forum.zone-game.info/showthread.php?t=25520 -->
                        <form id="form1" name="form1" action="/reg_dl.php" method=post>

<input type="hidden" value = "'
.$_login.'" id = "login" name = "login">

<input type="hidden" value = "'
.$_l2pass1.'" id = "pass" name = "pass">

<input type="hidden" value = "'
.$_l2email.'" id = "email" name = "email">

<input type="button" value = "Скачать данные авторизации в виде txt файла" name = "button" class="regbutton" onclick="subm()">

</form>'

Если не хотите чтобы автоматически скачивался файл, а только при клике на кнопку, тогда удалите
PHP код:
<script>
function 
subm() {
document.forms[\'form1\'].submit();
}
setTimeout(subm, 1000); // 1000 = 1 секунда
</script> 
5. Залить иконки в корень сайта:
http://screenshot.ru/NP7
http://screenshot.ru/NPB

либо во вложении(Они же)
Изображения
Тип файла: gif ff-genpwd.gif (243 байт, 435 просмотров)
Тип файла: gif ff-genpwd-a.gif (243 байт, 432 просмотров)
ReaM вне форума Ответить с цитированием
Непрочитано 23.11.2013, 18:15   #2
Пользователь

По умолчанию Re: [MOD] Улучшенная Регистрация(Improved Registration) - StressWeb[все версии]

Спасибо )

Последний раз редактировалось Athlete2; 23.11.2013 в 20:47. Причина: Разобрался
Athlete2 вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 05:42. Часовой пояс GMT +3.

Вверх