Ver Mensaje Individual
  #9 (permalink)  
Antiguo 05/06/2018, 06:46
Avatar de xfxstudios
xfxstudios
 
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: al guardar mi contraseña encriptada no loguea

Podrías generar las claves con una funcion así:

Código PHP:
Ver original
  1. function claveusuario($X){
  2.         $salt = substr(base64_encode(openssl_random_pseudo_bytes('30')), 0, 22);
  3.         $salt = strtr($salt, array('+' => '.'));
  4.         $hash = crypt($X, '$2y$10$' . $salt);
  5.         $claveB = $hash;
  6.         return $claveB;
  7.     }

Luego comparar la clave sería algo como:

Código PHP:
Ver original
  1. $db = new mysqli("host", "usuario", "clave", "base");
  2.  
  3. $usuario = $db->real_escape_string($_POST['usuario']);
  4. $clave = $db->real_escape_string($_POST['clave']);
  5.  
  6.  
  7. $a = $db->query("SELECT * FROM tabla WHERE usuario = '$usuario'");
  8. $count = mysqli_num_rows($a);
  9.  
  10.  
  11. if($count===1){
  12.     $row = $a->fetch_object();
  13.  
  14.     if(password_verify($clave, $row->clave)){
  15.         //Resto de tu codigo
  16.     }else{
  17.         //codigo de error
  18.     }
  19. }
  20.     $a->close();
  21.  
  22. $db->close()


Recuerda utilizar MySQLI `para evitarte problemas con las últimas versiones de PHP y así estar al día, tambien para mantener la seguridad de tus datos.
__________________
[email protected]
HITCEL