Cita de: lauro en 26 Mayo 2021, 00:05 AM
Muestran esto en pantalla:
pass es: 1234
pass_hashed es: $2y$10$YNMHUhlZgbSk5OTr6ZAbE.k.CjlFKrXmPMIm5Khtzi2I4hIBMerzq
el primero es el password que tipeo para incresar
y el segundo es el cifrado que viene de la base de datos
Ese hash pertenece al string vacio:
Citar
php > var_dump(password_verify('', '$2y$10$YNMHUhlZgbSk5OTr6ZAbE.k.CjlFKrXmPMIm5Khtzi2I4hIBMerzq'));
bool(true)
De hecho, tu esperas que la variable este vacia:
Código (php) [Seleccionar]
if(... && empty($password) && ...)
Cuando haces esto:
Código (php) [Seleccionar]
$password1 = password_hash ($password, PASSWORD_DEFAULT);
Así que es de esperarse que $password es un string vacio.