Php 在我更新我的用户哈希密码并再次登录后,密码\u需要\u重新设置为false
我已将带有密码哈希的用户插入数据库并登录Php 在我更新我的用户哈希密码并再次登录后,密码\u需要\u重新设置为false,php,Php,我已将带有密码哈希的用户插入数据库并登录 第一次工作密码匹配(例如:$2y$10$QmpJV…) 密码已被重新设置($2y$10$JbcQm…) 将用户重定向到后端页面后 注销并再次登录 但是第二次登录密码\u需要\u重新设置为false,还是我用错了 我希望我的用户密码在登录后更新 为什么它需要重新洗牌?您是否误解了password\u needs\u rehash的用途?password\u needs\u rehash是否用于使密码更强大和最新?为什么需要重新使用?您是否误解了密码\u
- 第一次工作密码匹配(例如:$2y$10$QmpJV…)
- 密码已被重新设置($2y$10$JbcQm…)
- 将用户重定向到后端页面后
- 注销并再次登录
为什么它需要重新洗牌?您是否误解了
password\u needs\u rehash
的用途?password\u needs\u rehash是否用于使密码更强大和最新?为什么需要重新使用?您是否误解了密码\u needs\u rehash
的用途?密码\u needs\u rehash是否用于使密码强大且最新?
if (password_verify($pass, $hashedPassword)) {
if (password_needs_rehash($hashedPassword, PASSWORD_DEFAULT)) {
$time=date("Y-m-d H:i:s");
$newHashedPassword = password_hash($pass, PASSWORD_DEFAULT);
$query="UPDATE tbl_user SET pwd=?,last_login=? where id=?";
$stmt=$con->prepare($query);
$stmt->bind_param("ssi",$newHashedPassword,$time,$id);
if($stmt->execute()){
$arr=array(
'valid' => true,
'error' => 'SQL Execute'
);
}else{
$arr=array(
'valid' => false,
'error' => 'SQL not Execute'
);
}
return $arr;
}else{
$arr=array(
'valid' => false,
'error' => 'Password rehash False'
);
return $arr;
}
}else{
$arr=array(
'valid' => false,
'error' => 'Password not Verify'
);
return $arr;
}