Foros del Web » Programando para Internet » PHP »

Validar un usuario

Estas en el tema de Validar un usuario en el foro de PHP en Foros del Web. Buenas.!! tengo un problema, de un formulario envio un mail y una contraseña.. sencillo y con un archivo de php valido si esta bien escrito ...
  #1 (permalink)  
Antiguo 22/09/2012, 10:38
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Validar un usuario

Buenas.!!
tengo un problema, de un formulario envio un mail y una contraseña.. sencillo

y con un archivo de php valido si esta bien escrito el correo y si existe.. pero no funciona.!!! .. no se que hago mal..

dejo codigo:

Código PHP:
Ver original
  1. $mail=$_POST['email'];
  2. $pass=$_POST['pass'];
  3.  
  4. $mail=strtolower($mail);
  5. $mail=trim($mail);
  6.  
  7. $con = conectar();
  8.  
  9. if(($mail!= "")&& ($pass!="") &&(filter_var($mail, FILTER_VALIDATE_EMAIL))){
  10.  
  11. $res=mysql_query("select * from usuarios where usu_email='$mail' AND usu_pass='$pass'",$con) or die (mysql_error());
  12.         if ($fila = mysql_fetch_assoc($res)){
  13.                 //usuario y contraseña válidos
  14.                 // ACA CREO SESIONES
  15.                // NO SE  COMO... PERO LAS CREO ...
  16.  
  17.         }else{
  18.                //usuario no existe // uso header para ir a mi pagina de formulario con el error..   1
  19.  
  20.  
  21.         }
  22.        //CORREO MAL ESCRITO //uso header para ir a mi pagina de formulario con el error..  
  23.  
  24. }

ese es mi codigo..
Gracias de antemano
saludos a todos
fede
  #2 (permalink)  
Antiguo 22/09/2012, 10:58
 
Fecha de Ingreso: febrero-2012
Mensajes: 49
Antigüedad: 12 años, 2 meses
Puntos: 2
Respuesta: Validar un usuario

Dos cosas, para que te podamos ayudar, pone tu codigo completo y agrega la function "conectar", segundo te recomiendo que utilices la extensión "mysqli", dado que la que estas usando esta en proceso de desuso.

Otra cosa, especifica que error tenes, si te da un "warning", no conecta, procesa pero no hace nada, se mas especifico.

Cualqueir cosa avísame!
__________________
@vindt89
  #3 (permalink)  
Antiguo 22/09/2012, 11:03
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Respuesta: Validar un usuario

Hola, errores no tira, se queda en blanco, es como que lo header no responde, pongo los dos codigos:

lo que imprime por pantalla es para guiarme y seguir con el codigo,,,

mi formulario:
Código PHP:
Ver original
  1. <div class="form_u"><!-- aca -->
  2.  
  3. <form action="validaUsu.php" method="post">
  4.  <fieldset>
  5.   <legend>USUARIOS</legend>
  6. <p>Email:<input type="text" name="email" /></p>
  7. <p>Pass:<input type="text" name="pass" /></p>
  8. <p><input type="submit" name="submit" value="Enviar" /></p>
  9. </fieldset>
  10. </form>
  11. <br /><br />
  12. <?
  13. if ($_GET['valido']==22){
  14.     print "INGRESE UN CORREO BIEN";
  15.     }
  16. if ($_GET['valido']==66){
  17.     print "USUARIO NO EXISTE";
  18.     }
  19. if ($_GET['valido']==55){
  20.     print "USUARIO VALIDO";
  21.     }
  22.  
  23. ?>
  24. </div> <!--aca -->

archivo validaUsu.php


Código PHP:
Ver original
  1. <?
  2. include("../_funciones/conectar.php");
  3. if (isset($_POST['submit'])){
  4. }else{
  5. header("location:../_index/index1.php");
  6. }
  7. $mail=$_POST['email'];
  8. $pass=$_POST['pass'];
  9.  
  10.  
  11.  
  12. $mail=strtolower($mail);
  13. $mail=trim($mail);
  14.  
  15.  
  16. $con = conectar();
  17.  
  18. if(($mail!= "")&& ($pass!="") &&(filter_var($mail, FILTER_VALIDATE_EMAIL))){
  19.  
  20. $res=mysql_query("select * from usuarios where usu_email='$mail' AND usu_pass='$pass'",$con) or die (mysql_error());
  21.         if ($fila = mysql_fetch_assoc($res)){
  22.                 //usuario y contraseña válidos
  23.                 // ACA CREO SESIONES
  24.                 header("Location:formU.php?valido=55");
  25.  
  26.         }else{
  27.                 header("Location:formU.php?valido=66");
  28.  
  29.  
  30.         }
  31.         header("Location:formU.php?valido=22");//error
  32.  
  33. }
  34.  
  35. ?>

No me tira erorr de conexion, para mi estan mal lis if.. ó algo,, no entiendo muy bien
muchas gracias por contestar..

Saludos cordiales
fede
  #4 (permalink)  
Antiguo 23/09/2012, 08:16
 
Fecha de Ingreso: febrero-2012
Mensajes: 49
Antigüedad: 12 años, 2 meses
Puntos: 2
Respuesta: Validar un usuario

Mirá fijate que acá le estas asignando un valor a $fila, no lo estas comparando, que me parece seria al idea.

Código PHP:
Ver original
  1. if ($fila = mysql_fetch_assoc($res)){
  2.                 //usuario y contraseña válidos
  3.                 // ACA CREO SESIONES
  4.                 header("Location:formU.php?valido=55");
  5.  
  6.         }

Para comparar tenes que usar "==". Fíjate y probalo nuevamente. Y si tu intención no es comprar sino asignar los valores resultantes de tu función, sacalo del if y después compara los parámetros.

Una recomendación cuando devuelvas errores no especifiques si el error esta en el usuario o en el pass, porque asi le das mas información a personas que capaz solo quieren destruir tu web.

Un abrazo!
__________________
@vindt89
  #5 (permalink)  
Antiguo 24/09/2012, 09:15
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: Validar un usuario

Hola Gracias por responder,
Tienes razon a la hora de dar muchas pistas con los errores... vere ese punto.

cambie por "==" y funciona correctamente.

Se agradece mucho tu tiempo

saludos
fede

Etiquetas: formulario, mysql, sql, usuarios
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 06:12.