Foros del Web » Programando para Internet » PHP »

validacion email con php

Estas en el tema de validacion email con php en el foro de PHP en Foros del Web. Saludos tengo el siguiente codigo: Código PHP: if (! filter_var (( $_POST [ 'email' ]),  FILTER_VALIDATE_EMAIL ) ==  TRUE )         {         echo  "<div style='color:red; font-size:12px'>CORREOOOOOO  MALOOOOOO</b></div>" ;         }else         {         echo  ...
  #1 (permalink)  
Antiguo 28/08/2013, 09:01
 
Fecha de Ingreso: mayo-2009
Mensajes: 131
Antigüedad: 14 años, 10 meses
Puntos: 0
validacion email con php

Saludos tengo el siguiente codigo:

Código PHP:
if (!filter_var(($_POST['email']), FILTER_VALIDATE_EMAIL) == TRUE)
        {
        echo 
"<div style='color:red; font-size:12px'>CORREOOOOOO  MALOOOOOO</b></div>";
        }else
        {
        echo 
"<div style='color:red; font-size:12px'>CORREOOOOOO  BUENOOOOOO<b></b></div>";
        exit;
        } 
en la caja de texto correspondiente al email, aunque yo escriba una a o abc o cualquer palabra ella lo ve como una correo e igual lo registra.

Como podria lograr que que no lo registre ya que eso no correspondes a un correo valido.
  #2 (permalink)  
Antiguo 28/08/2013, 09:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: validacion email con php

El problema que tienes es la lógica de la condición.

Al inicio estás negando pero enseguida comparas con TRUE, ¿no te has dado cuenta?

Código PHP:
Ver original
  1. // MAL
  2. if ( ! foo() == true)
  3.  
  4. // BIEN
  5. if ( ! foo())
  6. if (foo() == true)
  7. if ( ! (foo() == true))

Observa bien los paréntesis y piensa un poco lo que significa tu condición comparada a las otras, ¿verdad que no significan lo mismo?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/08/2013, 09:13
 
Fecha de Ingreso: enero-2013
Ubicación: Distrito Federal
Mensajes: 88
Antigüedad: 11 años, 3 meses
Puntos: 1
Respuesta: validacion email con php

En realidad lo que quieres hacer con el filter_var es cuando tienes variables especificas. Nunca lo he utilizado para verificar un correo

EJEMPLO
Código PHP:
Ver original
  1. //Se inicializan variables
  2. $email_1 = '[email protected]';
  3. $email_2 = 'mail';
  4.  
  5. if (filter_var($email_1, FILTER_VALIDATE_EMAIL)) {
  6.     echo "El mail es valido";
  7. }
  8. if (filter_var($email_2, FILTER_VALIDATE_EMAIL)) {
  9.     echo "El mail NO es valido";
  10. }
Lo que podrías hacer es utilizar una función.

EJEMPLO
Código PHP:
Ver original
  1. function valida_email($email){  
  2.   if(eregi("^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email)) //Esto nos garantiza que el correo debe tener un @ y un . para considerarlo como correo
  3.      return true;  
  4.   else  
  5.      return false;
  6. }
  7.  
  8. $mail = "$_POST['email']";
  9. if(valida_email($mail))
  10. {
  11.    echo "El mail es valido";
  12. } else {
  13.    echo "El mail NO es valido";
  14. }

Etiquetas: email, validacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:04.