Seregamil
Мастер
Добрый день, создал простую проверку на email игрока, может кому и пригодится...
P.S. критерии email'a взял с яндекса, но как я понимаю - они везде едины.
Массив с почтовиками:
почтовики добавляйте сами, мне лень.
Сама функция:
Использование:
Критерии:
P.S. критерии email'a взял с яндекса, но как я понимаю - они везде едины.
Массив с почтовиками:
PHP:
new web_post[][]={
"@yandex.ru",
"@mail.ru"
};
Сама функция:
PHP:
is_valid_email(email[]){
new web_number = -1, count_symbols, denite;
if(!('a' < email[0] < 'z')) return false;//почта начинается с любого символа, кроме латинского
for(new j;j!=sizeof(web_post);j++){//поиск почтовика из списка
if(strfind(email, web_post[j], true) != -1) {
web_number=j;
break;
}
}
if(web_number == -1) return false;//такой почтовик не предусмотрен
count_symbols = (strlen(email) - strlen(web_post[web_number]));
if(count_symbols > 30) return false;// если больше 30 символов - false
for(new j;j!=count_symbols;j++){
switch(email[j]){
case 'a'..'z','0'..'9': continue;
case '-','.': denite++;//одинарный дефис или точка
default: return false;//все остальные условия - запрет
}
}
if(denite > 1) return false;//если дефисов или точек больше одного - запрет
return true;
}
PHP:
if(!is_valid_email( переменная, отвечающая за введенный email )) return Kick(playerid);
Автор: SeregamilЛогин должен состоять из латинских символов, цифр,одинарного дефиса или точки,начинаться с буквы и заканчиваться буквой или цифрой и содержать не более 30 символов.
Последнее редактирование модератором:
