Проверка адреса E-mail.

  • Автор темы Автор темы GOsha
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
G

GOsha

Все просто:
Код:
function IsMail($var)
{
if (!eregi("^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}",$var))
{
return false;
}
return true;
}

if(IsMail('test@mail.ru'))
{
echo "OK!";
} else {
echo "ERR!";
}
 
Но ведь это только для доменов 1-ого уровня!
Но даже тут есть маленький недочёт в конце надо ставить знак $(что означает конец файла в противном случае скрипт не всегда будет работать правильно пример :test@mail.ruasd32421 выдаст 'OK!') в интоге для проверки доменов первого уровня получаем функцию:

Код:
<?
function validate_mail($var)
{
if(preg_match("/^[a-zA-Z0-9_\.-]+@[[:alpha:]]+\.[[:alpha:]]{2,4}$/i",$mail) && strlen($mail)<=32)
return true;
return false;
}
if(validate_mail("test@mail.ru"))
echo "validate OK!";
else 
echo "validate ERROR!";
?>
 
Для: deadt04ka
Не скушает.
Там стоит от 2-х до 4-х после точки.
И домены второго уровня там предусмотрены посмотри внимательно на паттэрн
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab