Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Login comparacion de contraseñas

Estas en el tema de Login comparacion de contraseñas en el foro de PHP en Foros del Web. Muy buenas, Quiero coger un campo concreto de mi base de datos (campo de contraseña)y guardar el contenido en una variable, para después comparar si ...
  #1 (permalink)  
Antiguo 21/09/2015, 11:55
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 10 años, 10 meses
Puntos: 0
Exclamación Login comparacion de contraseñas

Muy buenas,

Quiero coger un campo concreto de mi base de datos (campo de contraseña)y guardar el contenido en una variable, para después comparar si la contraseña que ha introducido es igual a la que tenemos en mi base de datos. Para ello he realizado el siguiente código:

Código PHP:
$query2=mysql_query("SELECT password FROM usuarios WHERE usuario = '$email'");
    
$datosresultquery2=mysql_fetch_array($query2);
    
$pass=$datosresultquery2['password']; 

    }
    if (
$pass!=$passintroducida)
    {
        echo 
$resultado2;
        
    }
    elseif (
$pass==$passintroducida){
        echo 
$resultado3;
        
    } 
Pero con este código no consigo comparar las contraseñas, puede ser por que no este almacenando bien en la variable $pass la contraseña de mi base de datos?


Saludos!!
  #2 (permalink)  
Antiguo 21/09/2015, 13:02
 
Fecha de Ingreso: julio-2011
Mensajes: 220
Antigüedad: 12 años, 9 meses
Puntos: 72
Respuesta: Login comparacion de contraseñas

Puede verificar el contenido de $pass usando la función var_dump(), también sería bueno mirar si la consulta no genera algún error y una pregunta ¿qué hace esa llave aparentemente solitaria antes del if?
Código PHP:
Ver original
  1. $query2=mysql_query("SELECT password FROM usuarios WHERE usuario = '$email'") or die(mysql_error());
  2. $datosresultquery2=mysql_fetch_array($query2);
  3. $pass=$datosresultquery2['password'];
  4. var_dump($pass);
  5.  
  6. }
  7.     if ($pass!=$passintroducida)
  8.     {
  9.         echo $resultado2;
  10.        
  11.     }
  12.     elseif ($pass==$passintroducida){
  13.         echo $resultado3;
  14.        
  15.     }
P.D. La extensión que estás usando para conectarte a MySQL se considera obsoleta deberías cambiar a alguna de las alternativas http://php.net/manual/es/intro.mysql.php
  #3 (permalink)  
Antiguo 22/09/2015, 14:16
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Login comparacion de contraseñas

Hola,

Éste seria el codigo completo:

Código PHP:
$query=mysql_query("SELECT email FROM tabla WHERE email = '$email'");
    
$querycheck=mysql_num_rows($query);
    
    if (
$querycheck==0){
        
        echo 
$resultado1;
        
$pass=0;
        
    }
    else{        
    
    
$query2=mysql_query("SELECT password FROM usuarios WHERE usuario = '$email'"); 
    
$datosresultquery2=mysql_fetch_array($query2); 
    
$pass=$datosresultquery2['password'];  

    } 
    if (
$pass!=$passintroducida
    { 
        echo 
$resultado2
         
    } 
    elseif (
$pass==$passintroducida){ 
        echo 
$resultado3
         
    } 
ese corchete no es mas que el fin de un condicional que funciona bien..

Pruebo lo de var_dump y os comento que tal..

Gracias!
  #4 (permalink)  
Antiguo 26/09/2015, 08:49
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Login comparacion de contraseñas

Buenas tardes!!

ya he probado lo que me comentaste y efectivamente me muestra lo siguiente:

string(5) "44263"

Es decir muestra la contraseña correcta.

Ahora bien como lo puedo comparar entonces para que funcione??
  #5 (permalink)  
Antiguo 26/09/2015, 09:00
Avatar de angel_xx_1990  
Fecha de Ingreso: junio-2013
Ubicación: Guadalajara
Mensajes: 236
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Login comparacion de contraseñas

Ya funciona!

El error es que era el siguiente:
Código PHP:
$resultado2="Contraseña incorrecta";
$resultado2="Correcto"

tenian el mismo nombre las variables...



Muchas gracias!!!

Etiquetas: comparacion, contraseñas, login, select, sql, usuarios, variable
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 20:12.