Корректность ввода е-мейла

286
.
Добавлено: 25.10.2017 / 10:46
В общем нужно чтобы вводить можно было буквы @ и точку, если можно как-то сделать чтобы обязательно была собачка @
// Проверка mail
if (empty($reg_mail))
$error = $error . 'Не введён E-mail!';
elseif (mb_strlen($reg_mail) < 3 || mb_strlen($reg_mail) > 30)
$error = $error . 'Недопустимая длина E-mail';
if (preg_match("/[^a-z\._-]+@[a-z\._-]+\.[a-z]\$/", $reg_mail))
$error = $error . 'Некорректный формат e-mail адреса!';


Добавлено: 25.10.2017 / 11:13
Я извиняюсь, дайте такой код с вводом цыфр, букв @ и точку, и обязательно чтоб была введена @
.
Iron_Man, зачем? Достаточно проверять на наличие собаки @. А остальное всё - это уже проблемы отправителя.
.
Koenig
(\/)____o_O____(\/)
Через фильтр можно мыло прогнать
http://php.net/manual/ru/filte ... e.php
.
Koenig, где-то попадалась мне статья о не корректном фильтровании с помощью этой ф-ции.
.
ДоХтор
Iron_Man, потестируй этот пример, вроде бы всё учтено:
code (+/-)
.
JohnCMS
Iron_Man, http://johncms.com/forum/index ... 02486 там есть проверка валидности емайла
.
# Jesk (28.10.2017 / 13:55)
Iron_Man, http://johncms.com/forum/index ... 19252 там есть проверка валидности емайла
Там кривая проверка валидности:
'/[0-9a-z_\-]+@[0-9a-z_\-^\.]+\.[a-z]{2,6}/i'
Она будет пропускать не корректные майлы вида: asdasd@-asd.ru
.
__________________________________________________
Вон что откопал
----------------

function isMail($email)
{
    return preg_match('#^([a-z0-9_\-\.])+\@([a-z0-9_\-\.])+(\.([a-z0-9])+)+$#', $email);
}
.
# Andrei4ik93 (06.11.2017 / 14:38)
Вон что откопал
----------------



function isMail($email)
{
return preg_match('#^([a-z0-9_\-\.])+\@([a-z0-9_\-\.])+(\.([a-z0-9])+)+$#', $email);
}
Ну дык эта регулярка тоже не катит : -ertertert@ert.ert

Я же выше написал более менее корректное решение.
.
Hey guys! Finally I'm gonna change status!?
# ДоХтор (06.11.2017 / 14:42)
-ertertert@ert.ert
Это кстати корректное мыло
По rfc стандарту в локальной части адреса, какого только барахла не может быть(по моему все символы) Мэйлерам правда не понравится. FILTER_VALIDATE_EMAIL работает как раз по стандарту
Всего: 11