• Страница 1 из 1
  • 1
Проверка логина при регистрации
shooterДата: Воскресенье, 08.08.2010, 03:40 | Сообщение # 1
^^ХулиганьЁ^^
Логин: shooter
Имя: жека загрядский
Сообщений: 468
Награды: 4
Репутация: 65
Замечания:

Вы давно мечтали сделать проверку логина у себя на сайте, как при регистрации на UcoZ'е, но не знали, как это сделать? Можете воспользоваться ГОТОВЫМ решением! Подойдёт для любых сайтов. Использовать лучше на сайтах с большим количеством пользователей.
Всё по шагам, для новичков и продвинутых пользователей!
Сам материал:
1. Вставляется в шаблон "Персональная страница пользователя" после :
Code

<span id="chUName" style="display:none;">Проверка логина, так сказать :)</span>

2. Теперь самая важная часть, вставка скрипта в шаблон "Форма регистрации пользователей":
около

Code
$LOGIN_FL$

Version 1

Code
<input type="text" id="siF13" class="manFlLogin" name="user" value="" size="20" style="width:200px" maxlength="25" onchange="PrepareLoginToChecking();SubmitLoginToCheck()" />  
<iframe name="lf" src="/index/8-0-*" height="1px" width="1px" frameborder="0" onload="GetMessageAboutAvailableLogin()"></iframe>  
<input type="hidden" id="tch" value="*">  
<span id="msg"></span>  
<script>  
/* */  
function PrepareLoginToChecking()  
{  
var original=("-").split("*")    
var neww=("~").split("*")  
var xy=0    
for(xy=0; xy<=(original.length-1); xy++) {    
var original1="/"+original[xy]+"/g"    
document.getElementById("tch").value = document.getElementById("siF13").value.replace(eval(original1), neww[xy])    
}  
}  
function SubmitLoginToCheck()  
{  
if(document.getElementById("siF13").value.length <= 1)  
{  
document.getElementById('msg').innerHTML='<span style=\"font-size:7pt;\"><img src=\"http://src.ucoz.ru/img/icon/er.png\" align=\"absmiddle\" border=\"0\"> Введите логин</span>';  
return false;  
}  
window.lf.location='/index/8-0-'+document.getElementById("tch").value+'';  
document.getElementById('msg').innerHTML='<span style=\"font-size:7pt;\"><img src=\"http://src.ucoz.ru/img/wd/3/ajaxs.gif\" align=\"absmiddle\" border=\"0\"> Проверка логина...</span>';  
}  
function GetMessageAboutAvailableLogin()  
{  
if(document.getElementById("siF13").value.length <= 1)  
{  
document.getElementById('msg').innerHTML='<span style=\"font-size:7pt;\"><img src=\"http://src.ucoz.ru/img/icon/er.png\" align=\"absmiddle\" border=\"0\"> Введите логин</span>';  
return false;  
}  
if(window.lf.document.getElementById('chUName'))  
{  
document.getElementById('msg').innerHTML='<span style=\"font-size:7pt;\"><img src=\"http://src.ucoz.ru/img/icon/er.png\" align=\"absmiddle\" border=\"0\"> Логин занят</span>';  
}  
else  
{  
document.getElementById('msg').innerHTML='<span style=\"font-size:7pt;\"><img src=\"http://src.ucoz.ru/img/icon/ok.png\" align=\"absmiddle\" border=\"0\"> Логин свободен</span>';  
}  
}  
</script>

Version2.1
Code

<span id="msgL" style="font:7pt;"> </span>    
<input type="hidden" id="tch" value="*">    
<script type="text/javascript">    
//    
//     
var Lok;    
var L = document.getElementById('siF13');    
L.style.width = '50%';    
L.onchange = 'PrepareLoginToChecking();SubmitLoginToCheck()';    
if(navigator.appName=='Microsoft Internet Explorer'){L.attachEvent('onchange', function() {PrepareLoginToChecking();SubmitLoginToCheck()},true)}else{  
L.addEventListener('change', function() {PrepareLoginToChecking();SubmitLoginToCheck()}, true)}  
var lmsg = document.getElementById('msgL');    
function checkLogin(){    
if (L.value.match(/[^a-zA-Z0-9\-\_\@\%\{\}\[\]\(\)\u0080-\uFFFF]/)){    
Lok=0;    
document.getElementById('msgL').innerHTML='<img border="0" src="http://src.ucoz.ru/img/icon/er.png" align="absmiddle" width="16" height="16"> В логине присутствуют недопустимые символы';    
}    
else if (L.value.length<2){    
Lok=0;    
document.getElementById('msgL').innerHTML='<img border="0" src="http://src.ucoz.ru/img/icon/er.png" align="absmiddle" width="16" height="16"> Минимальная длина логина <b>2</b> символа';    
}    
else if (L.value.length>25){    
Lok=0;    
document.getElementById('msgL').innerHTML='<img border="0" src="http://src.ucoz.ru/img/icon/er.png" align="absmiddle" width="16" height="16"> Максимальная длина логина <b>25</b> символов';    
}    
else {    
Lok=1;    
document.getElementById('msgL').innerHTML='<img border="0" src="http://src.ucoz.ru/img/icon/ok.png" align="absmiddle" width="16" height="16"> Логин введён корректно';    
}    
}    
function PrepareLoginToChecking()    
{    
var original=("-").split("*");    
var neww=("~").split("*");    
var xy=0;    
while(xy<=(original.length-1)) {    
var original1="/"+original[xy]+"/g";    
document.getElementById("tch").value = L.value.replace(eval(original1), neww[xy]);    
xy++;    
}    
}    
function SubmitLoginToCheck()    
{    
checkLogin();    
if(Lok != 1)    
{    
return false;    
}    
window.lf.location='/index/8-0-'+document.getElementById("tch").value+'';    
document.getElementById('msgL').innerHTML='<img src=\"http://src.ucoz.ru/img/wd/3/ajaxs.gif\" align=\"absmiddle\" border=\"0\"> Проверка логина...';    
}    
function GetMessageAboutAvailableLogin()    
{    
checkLogin();    
if(Lok != 1)    
{    
return false;    
}    
if(window.lf.document.getElementById('chUName'))    
{    
document.getElementById('msgL').innerHTML='<img src=\"http://src.ucoz.ru/img/icon/er.png\" align=\"absmiddle\" border=\"0\"> Логин занят';    
}    
else    
{    
document.getElementById('msgL').innerHTML='<img src=\"http://src.ucoz.ru/img/icon/ok.png\" align=\"absmiddle\" border=\"0\"> Логин свободен';    
}    
}    
</script> <iframe name="lf" src="/index/8-0-*" style="display:none;" height="1px" width="1px" frameborder="0" onload="GetMessageAboutAvailableLogin()"></iframe>

версии 2.1 добавлено:
- Полная поддержка Internet Explorer.
Скрипт тестировался в браузерах:
Microsoft Internet Explorer 7 - успешно;
Opera 9.50 - успешно;
Mozilla Firefox 2.0.0.6 - успешно.

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


  • Страница 1 из 1
  • 1
Поиск:

Статистика Форума
Лучшие пользователи
Уважаемые пользователи
Популярные темы
Недавно обновленные темы
LaiNeR Постов [ 3127 ]
Staistesap Постов [ 1545 ]
z1M Постов [ 1488 ]
Mooxyrep Постов [ 1145 ]
Pooniacact Постов [ 986 ]
KoreshoK Постов [ 644 ]
LonS Постов [ 585 ]
BIG_BOSS Постов [ 572 ]
DoZa Постов [ 564 ]
shooter Постов [ 468 ]
LonS Репутация [ 546 ]
LaiNeR Репутация [ 519 ]
Smofee Репутация [ 477 ]
СнAйПер Репутация [ 436 ]
MedeX Репутация [ 412 ]
TiPSy Репутация [ 300 ]
bleff Репутация [ 279 ]
-=SToRM=- Репутация [ 235 ]
A6c3Ht^ Репутация [ 225 ]
NoRD Репутация [ 210 ]
Общение [ 1309 ]
Считаем до 1 000 [ 664 ]
Поговорим обо всем :) (девушки, машины, личная жизнь и тд) [ 369 ]
Афоризмы (Не комментируйте) [ 301 ]
Играем в СЛОВА [ 187 ]
Конкурс "Угадай возраст". [ 183 ]
Конкурс "Угадай автомобиль" [ 110 ]
Предложения по сайту [ 97 ]
Набивка постов [ 80 ]
Обломай товарища [ 75 ]
source-boost.ru | Мониторинг сервера CSS v34 [ 0 ]
source-boost.ru | Мониторинг сервера CSS v34 [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Скачать CSS v34 НОВЫЕ ПУШКИ - cs-kontra.ru [ 0 ]
Swatik [ 1 ]

Хостинг от uCoz | sitemap.xml | sitemap-forum.xml | sitemap-shop.xml | urllist.txt | |
PR-CY.ru