|
|
|
| Подскажите вот данный код подойдёт для проверки е-mail или в нём есть недостатки, можете предложить свои варианты:
//
// проверяет мыло и возвращает
// * +1, если мыло пустое
// * -1, если не пустое, но с ошибкой
// * строку, если мыло верное
//
function checkmail($mail) {
// режем левые символы и крайние пробелы
$mail=trim(pregtrim($mail)); // функцию pregtrim() возьмите выше в примере
// если пусто - выход
if (strlen($mail)==0) return 1;
if (!preg_match("/^[a-z0-9_-]{1,20}@(([a-z0-9-]+\.)+(com|net|org|mil|".
"edu|gov|arpa|info|biz|inc|name|[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-".
"9]{1,3}\.[0-9]{1,3})$/is",$mail))
return -1;
return $mail;
}
|
| |
|
|
|
|
|
|
|
для: Паша
(04.01.2008 в 21:47)
| | Почему у Вас на первую часть всего 20 символов отведено? Да, еще я уже не раз встречал email с точкой (last.firtst@site.com)!
Также вот это перечисление доменов не обязательно делать!
Короче, просто откройте поиск, такие темы каждый день создаются, только в разделе "Рег.выражения"! Уже надоело даже читать их не то что отвечать! | |
|
|
|
|
|
|
|
для: ddhvvn
(04.01.2008 в 23:11)
| |
# email: мин 8 символов
$mail = trim($_POST['email']);
$mail = (strlen($mail) > 7 && preg_match( '/^[A-Z0-9._-]+@[A-Z0-9][A-Z0-9.-]{0,61}[A-Z0-9]\.[A-Z.]{2,6}$/i' , $mail))
|
| |
|
|
|