Проверка логина при регистрации - Форум
Как вы планируете провести лето
Всего ответов: 360


Сегодня были:

Зарег. на сайте
<Всего: 1041
Новых за месяц: 0
Новых за неделю: 0
Новых вчера: 0
Новых сегодня: 0

Из них
Администраторов: 1
Старших Модераторов: 1
Модераторов: 4
Проверенных: 1
Обычных юзеров: 1032

Из них
Парней: 904
Девушек: 136


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » WebMasteram » Скрипты для uCoz » Проверка логина при регистрации
Проверка логина при регистрации
AlecsandrДата: Среда, 16.09.2009, 21:06 | Сообщение # 1
Полковник
Группа: Администраторы
Сообщений: 212
Репутация: 17

Бог сайта и форума За супер посещаемость За хорошую посещаемость на форуме За супер посещаемость За Полковника За помощь народу За супер посещаемость
Награды: 15
Статус: Offline
Вы давно мечтали сделать проверку логина у себя на сайте, как при регистрации на UcoZ'е, но не знали, как это сделать? Можете воспользоваться ГОТОВЫМ решением! Подойдёт для любых сайтов. Использовать лучше на сайтах с большим количеством пользователей.
Всё по шагам, для новичков и продвинутых пользователей!
Сам материал:
1. Вставляется в шаблон "Персональная страница пользователя" после :
Code
<span id="chUName" style="display:none;">Проверка логина, так сказать :)</span>

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

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>

Смотрите ничего не потеряйте‼
Вот и всё готово.
Внимание! Для корректной работы скрипта надо включить опцию "Просмотр пользовательских страниц" для гостей! В противном случае, всегда будет выдаваться сообщение о том, что логин свободен.
Внимание! Не потеряйте участок кода, который вставляется в шаблон профиля. Помните, что при смене дизайна, использовании конструктора шаблонов, восстановлении шаблона этот код может быть утерян.
Оригинал статьи: http://anton.ucoz.net/blog/2008-07-09-8
Форум » WebMasteram » Скрипты для uCoz » Проверка логина при регистрации
  • Страница 1 из 1
  • 1
Поиск: