Ищется скрипт проверки адреса электронной почты на существование

Valerie_Stalliere
На сайте с 03.10.2006
Offline
68
5325

Требуется скрипт проверки адреса электронной почты на существование, т.е. если человек ошибся в написании своего адреса, например вместо alex.sergeev@gmail.com написал alXE.sergeev@gmail.com или alex.sergeev@gmEil.com - тогда скрипт автоматом проверяет существует ли такой адрес (видимо это делается через DNS, тестовый запрос к почтовому серверу) и выдает зеленую или красную галочку.

Я видел такие неоднократно при заполнении форм отправки, или при заполнении регистрационных анкет

Наверняка такая штука написана на Ajax, т.к. не треубюет перезагрузки страницы

Наверняка уже давно этот скрипт есть в общем доступе, но через поисковики нашел только старые скрипты, которые проверяют просто правильность написания адреса, чтобы была сбоачка, не было кириллических символов и прочее.

B
На сайте с 05.05.2009
Offline
11
#1

Мб, скрипт выдает галочку по принципу: правильно написан адрес или нет. а вообще универсального чекера нет

BoyStav
На сайте с 10.11.2006
Offline
182
#2
Valerie_Stalliere:
Требуется скрипт проверки адреса электронной почты на существование, т.е. если человек ошибся в написании своего адреса, например вместо alex.sergeev@gmail.com написал alXE.sergeev@gmail.com или alex.sergeev@gmEil.com - тогда скрипт автоматом проверяет существует ли такой адрес (видимо это делается через DNS, тестовый запрос к почтовому серверу) и выдает зеленую или красную галочку.
Я видел такие неоднократно при заполнении форм отправки, или при заполнении регистрационных анкет
Наверняка такая штука написана на Ajax, т.к. не треубюет перезагрузки страницы
Наверняка уже давно этот скрипт есть в общем доступе, но через поисковики нашел только старые скрипты, которые проверяют просто правильность написания адреса, чтобы была сбоачка, не было кириллических символов и прочее.

очень сомневаюсь существовании такого чекера.

J
На сайте с 02.02.2009
Offline
53
#3


function check_email_address($email) {
// First, we check that there's one @ symbol,
// and that the lengths are right.
if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
// Email invalid because wrong number of characters
// in one section or wrong number of @ symbols.
return false;
}
// Split it into sections to make life easier
$email_array = explode("@", $email);
$local_array = explode(".", $email_array[0]);
for ($i = 0; $i < sizeof($local_array); $i++) {
if
(!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%& &#8618;'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$",
$local_array[$i])) {
return false;
}
}
// Check if domain is IP. If not,
// it should be valid domain name
if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
$domain_array = explode(".", $email_array[1]);
if (sizeof($domain_array) < 2) {
return false; // Not enough parts to domain
}
for ($i = 0; $i < sizeof($domain_array); $i++) {
if
(!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|
&#8618;([A-Za-z0-9]+))$",
$domain_array[$i])) {
return false;
}
}
}
return true;
}

Как вариант - от ILoveJackDaniels

Но конечно коллизии могут быть всё равно

N
На сайте с 06.05.2007
Offline
419
#4

Не особо хорошая идея, учитывая что все эти домены захвачены домейнерами.

И в Dns они будут представлены. И доставка почты возможна в частности на gmeil.com. (по А-записи)

Довольно часто быстрые решения стандартных проблем встречаются в комментах на php.net :

http://ru2.php.net/manual/ru/function.checkdnsrr.php

там несколько вариантов есть.

Кнопка вызова админа ()
J
На сайте с 02.02.2009
Offline
53
#5

* или как вариант - набить исключений по крупным мылохостерам

K
На сайте с 29.04.2008
Offline
74
#6

можно только проверить правильно ли указан email... нет ли кирилических символов и так далее.. можно проверить на существование домена (почтового сервера), а вот проверить наличие юзера на сервере с помощью пхп не возможно... на всех почти почтовиках выключены комманды vrfy и так далее (у меня на серверах тоже) что делает проверку невозможным... только если на перле решение искать, а они вроде как есть в инете, но не проверял на работоспособность.

Open Source Danneo CMS (http://nafn.ru)
[Удален]
#7

kmvtut, можно без команды, но тоже сейчас поотключали эту фичу.

когда пытаешься послать члеовеку письмо

RCPT: lalala@mail.com

так если юзер не существует, то вовзращается ошибка нечто вида

"recepient doesnot exists"

и при перенастроеном сервере "we get email for user. will try to delivery. thank you" - тут уже ничего не сделать :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий