Es sencillo validar direccion de correo en tu web 馃檪

Validar direccion de correo o de email

Validar direccion de correo electr贸nicoCuando nos encontramos desarrollando un software, donde el correo electr贸nico del usuario deba ser sometido y utilizado como parte del proceso, nos encontramos con la necesidad de validar direccion de correo, para no llenar nuestra base de datos, con correos electr贸nicos inv谩lidos.

Validar direccion de correo con PHP

Al validar direccion de correo podemos encontrarnos en varios escenarios y entornos de alojamiento, por lo que a continuaci贸n incluimos el c贸digo que pueden utilizar en versiones anteriores a PHP 5.

function validar_email($email) {

list($local, $domain) = explode("@", $email);

$pattern_local = '^([0-9a-z]*([-|_]?[0-9a-z]+)*)(([-|_]?)\.([-|_]?)[0-9a-z]*([-|_]?[0-9a-z]+)+)*([-|_]?)$';
$pattern_domain = '^([0-9a-z]+([-]?[0-9a-z]+)*)(([-]?)\.([-]?)[0-9a-z]*([-]?[0-9a-z]+)+)*\.[a-z]{2,4}$';

$match_local = eregi($pattern_local, $local);
$match_domain = eregi($pattern_domain, $domain);

if ($match_local && $match_domain) {
return 1;
} else {
return 0;
}
}

Como podemos ver la funci贸n anterior divide el correo electr贸nico con explode() basado en la arroba, y luego realiza las comprobaciones a la izquierda y a la derecha con tal de verificar que la sintaxis sea totalmente valida.

Para invocar a la funci贸n validar_email(), debemos hacer algo as铆:

if (validar_email("[email protected]")) {
echo "Ok";
} else {
echo "Error";
}

Sin embargo, en PHP 5 se a帽ade la funcionalidad de filter_var que como lo indica el Manual Oficial de PHP:

Filtra una variable con el filtro que se indique

Por lo que si deseamos verificar un correo electr贸nico, es tan sencillo como utilizar:

if(filter_var("[email protected]", FILTER_VALIDATE_EMAIL)){
echo "Ok";
} else {
echo "Error";
}

驴Bastante m谩s sencillo cierto?

Validar direccion de correo con JavaScript

Otra forma de validar direccion de correo es con JavaScript del lado del cliente, y lo bueno, es que podemos utilizar una medida como esta, en combinaci贸n con la utilizaci贸n de la forma en PHP (o de otros lenguajes del servidor), para garantizarnos lo m谩s posible, que el dato sea totalmente valido.

A continuaci贸n la funci贸n en JavaScript:

function validar_email(email) {

var hbz = /^(([^<>()[\]\\.,;:\[email protected]\"]+(\.[^<>()[\]\\.,;:\[email protected]\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return hbz.test(email);
}

Y la podemos invocar tan simplemente como:

if(validar_email("[email protected]")){
document.write("Ok") ;
} else {
document.write("Error");
}

Validar direccion de correo con Perl

Para validar direccion de correo con Perl, debemos idealmente utilizar el modulo Email::Valid (que puedes instalar desde CPAN), y con el que tan solo deber铆amos utilizar un c贸digo tan simple como:

use Email::Valid

$email = '[email protected]';
if (Email::Valid->address($email)) {
print 'Ok';
} else {
print 'Error';
}

Espero que con estas alternativas puedan verificar direccion de correo sin ning煤n problema, y que nos dejen sus comentarios al final de este blog.

Un hacking saludo…