[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Ругается на старые функции
fortuna
Взял функцию для проверки e-mail , но там устарели две функции
function  checkEmail($email) {
if([b]eregi[/b]("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]",$email)) {
return FALSE;
}
list($Username, $Domain) = [b]split[/b]("@",$email);
if(getmxrr($Domain, $MXHost)) {
return TRUE;
} else {
if(fsockopen($Domain, 25, $errno, $errstr, 30)) {
return TRUE;
} else {
return FALSE;
}
}
}


Может кто поможет их заменить на новые ?
Zzepish
Если память не врет- eregi уже не пашет. Лучше заюзай preg_match
killer8080
eregi замени на preg_match, split на preg_split. Но в твоем случае регулярку вообще лучше выкинуть, используй
filter_var($email, FILTER_VALIDATE_EMAIL)

она конечно то же не безупречна, но по крайней мере куда как ближе соответствует RFC.
А вместо split("@",$email) достаточно простого explode()
fortuna
killer8080
Если не трудно можете показать как всё должно выгледить ? а то я данный скрипт взял со стороннего сайта , я уже с ним час сижу .
killer8080
Цитата (fortuna @ 26.03.2013 - 15:22)
Если не трудно можете показать как всё должно выгледить ?

выглядеть все может по разному, в зависимости от того, что нужно получить.
Если нужно просто проверить валидность адреса, достаточно просто
...
return (bool)filter_var($email, FILTER_VALIDATE_EMAIL);

Цитата (fortuna @ 26.03.2013 - 14:48)
    list($Username,  $Domain) = split("@",$email);
    if(getmxrr($Domain,  $MXHost)) {        return  TRUE;
    } else {        if(fsockopen($Domain,  25, $errno, $errstr, 30)) {
            return  TRUE;        } else {
            return  FALSE;        }
    }

эта часть нужна для верификации почтового домена, если оно не надо, можно выкинуть.
fortuna
killer8080
Ага спасибо , я понял что она проверяет по 25 порту .
killer8080
Цитата (fortuna @ 26.03.2013 - 16:17)
Ага спасибо , я понял что она проверяет по 25 порту .

это только в том случае, когда не удается определить mx запись для домена через днс.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.