function validMail.php
2007-10-08 18:08:21 by zetta in Php (1 comment) permalink
Muchas veces tengo que comprobar si un correo que escriben en algun formulario es un correo válido, algunas otras veces esto se complica pues algunas expresiones regulares pueden ser fácilmente engañadas con un a@a.a, con esta función podemos verificar mas a fondo si este es un correo real.
/*
validMail():Boolean
@email -> string: email a comparar
@validate -> Boolean: conectarse al servidor a buscar dicho usuario
*/
function validMail($email,$validate = false) {
if (!
eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$",
$email))
return false;
if ($validate){
list ( $Username,
$Domain ) =
split ("@",
$email);
$ConnectAddress = $MXHost[0];
else
$ConnectAddress = $Domain;
if ($Connect) {
if (ereg("^220",
$Out =
fgets($Connect,
1024))) {
fputs ($Connect,
"HELO $HTTP_HOST\r\n");
$Out =
fgets ( $Connect,
1024 );
fputs ($Connect,
"MAIL FROM: <{$email}>\r\n");
$From =
fgets ( $Connect,
1024 );
fputs ($Connect,
"RCPT TO: <{$email}>\r\n");
$To =
fgets ($Connect,
1024);
fputs ($Connect,
"QUIT\r\n");
if (!
ereg ("^250",
$From) || !
ereg ( "^250",
$To )) {
return false;
}
}else{
return false;
}
}else{
return false;
}
}
return true;
}
?>
Tags: Php,
email,
function,
php,
valid,
validEmail