Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/12/2011, 14:04
Avatar de Uncontroled_Duck
Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años
Puntos: 261
Respuesta: problema con logeo de contraseña y usuario

Lo he mirado así un poco rápido. Al guardar la pass lo guardas mediante
Código PHP:
$password sha1(trim(preparar_consulta($_POST["password"]) 
Y al realizar la comparación, estás comparando la pass que viene por POST (sin sha1), con la que está guardada en la DB que la has guardado con sha1.
Código PHP:
//archivo login
$username $_POST["username"]; 
$password $_POST["password"]; 
     
$usuarioUsuario::autenticar($username,$password); 
En alguna parte de aquí debes igualar el proceso de hasheado antes de pasarlo a la consulta para que compare las dos contraseñas exactamente iguales.
Código PHP:
//class Usuario
    
public static function autenticar($username ""$password""
    { 
        global 
$bd
        
$username $bd->preparar_consulta($username); 
        
$password $bd->preparar_consulta($password); 
         
        
$sql "SELECT * FROM usuarios "
        
$sql .= " WHERE username='{$username}' "
        
$sql .=" AND password='{$password}' "
        
$sql .=" LIMIT 1"
         
        
$matriz_usuarios Usuario::buscar_por_sql($sql); 
        return  (!empty(
$matriz_usuarios)) ? array_shift($matriz_usuarios) : false 
    } 
Prueba y nos cuentas,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight