无法从 MySQL 获取密码哈希
Could not fetch password hash from MySQL
我的密码验证有问题。
我正在尝试从我的密码列中获取哈希值,然后使用表单中的密码进行验证。我不确定为什么它不起作用:
$pass = mysqli_query($link, "SELECT password FROM male_users WHERE email=$email");
$hash = mysqli_fetch_assoc($pass);
if (password_verify($password, $hash)) {
echo('Hello');
} else {
echo('Email or Password not mach');
}
它返回一个错误:mysqli_fetch_assoc() 期望参数 1 为 mysqli_result,给定的布尔值,但我在堆栈上发现人们成功地使用了它。我究竟做错了什么?提前谢谢!
最好的问候
尝试这样和你的 mysqli_fetch_assoc return 数组所以使用 $hash['password'] 而不是 $hash 最后在 where 条件中使用单引号 .
$pass = mysqli_query($link, "SELECT password FROM male_users WHERE email='$email'");
$hash = mysqli_fetch_assoc($pass);
if (password_verify($password, $hash['password'])) {
echo('Hello');
} else {
echo('Email or Password not mach');
}
我的密码验证有问题。 我正在尝试从我的密码列中获取哈希值,然后使用表单中的密码进行验证。我不确定为什么它不起作用:
$pass = mysqli_query($link, "SELECT password FROM male_users WHERE email=$email");
$hash = mysqli_fetch_assoc($pass);
if (password_verify($password, $hash)) {
echo('Hello');
} else {
echo('Email or Password not mach');
}
它返回一个错误:mysqli_fetch_assoc() 期望参数 1 为 mysqli_result,给定的布尔值,但我在堆栈上发现人们成功地使用了它。我究竟做错了什么?提前谢谢! 最好的问候
尝试这样和你的 mysqli_fetch_assoc return 数组所以使用 $hash['password'] 而不是 $hash 最后在 where 条件中使用单引号 .
$pass = mysqli_query($link, "SELECT password FROM male_users WHERE email='$email'");
$hash = mysqli_fetch_assoc($pass);
if (password_verify($password, $hash['password'])) {
echo('Hello');
} else {
echo('Email or Password not mach');
}