Tema: FAQ's de PHP
Ver Mensaje Individual
  #168 (permalink)  
Antiguo 31/10/2006, 01:09
Avatar de urgido
urgido
 
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
P: Validar email de una forma más completa
R: aqui esta la solución. Usaremos "eregi", variables globales, regexps, if-else.

Código PHP:
$email_correcto "^[a-z0-9_\+-]+(\.[a-z0-9_\+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,4})$";
$caracteres_extranos "^[a-z0-9,!#\$%&'\*\+/=\?\^_`\{\|}~-]+(\.[a-z0-9,!#\$%&'\*\+/=\?\^_`\{\|}~-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,})$";

// Validamos la dirección, usamos caracteres comunes
if (eregi($email_correcto$email)) {
  echo(
"La dirección <i>$email</i> es válida.");
}

/* Validamos la dirección, tomamos en cuenta que algunos proveedores permiten caracteres extraños.*/
else if (eregi($caracteres_extranos$email)) {
  echo(
"La dirección <i>$email</i> contiene caracteres extraños, pero comunmente no afecta el script. Se tomará como válida.");
}

// Si nada de lo anterior pasa... return false
else {
  echo(
"La dirección <i>$email</i> no es válida.");

Te recuerdo que la variable $email es igual al campo del formulario de tu página web.

Saludos
__________________
Hospedaje Web al mejor costo!