php - 使用带有散列密码的 PHP 重置密码
问题描述
我正在尝试实现用户在登录到我的系统仪表板后可以更改密码。
当我尝试更改密码时,尽管没有错误,但什么也没有发生,而且我不确定自己做错了什么。我已经实现了密码哈希来保证用户密码的安全,尽管我不确定这可能是问题所在。
这是我的更改密码代码
<?php
include('../configfiles/config.php');
session_start();
if (isset($_POST['submit']))
{
$logged_in_user = $_SESSION['loggedin'];
$currentpassword = $_POST ['currentpassword'];
$newpassword = $_POST ['newpassword'];
$newhashpassword = password_hash($newpassword, PASSWORD_DEFAULT);
if ($newpassword != $currentpassword)
{
$sql = ("SELECT * FROM users WHERE email = '$logged_in_user'");
$db_check = $db->query($sql);
if (password_verify($currentpassword, $db_check->fetch_assoc()['password']))
{
$fetch = $db->query("UPDATE users SET password = '$newhashpassword' WHERE email = '$logged_in_user'");
$currentpassword = '';
$newpassword = '';
header('Location: ../dashboard.php');
}
}
}
?>
解决方案
推荐阅读
- firebase - Flutter FirebaseException(核心/未初始化异常
- regex - 如何使用正则表达式模式限制字符串开头或结尾的特殊字符?
- android - 在应用程序中静态构建 OpenCV 失败“错误:对 'ippicvsRound_64f' 的未定义引用”
- excel - 查找部分匹配的行
- node.js - nestjs swagger 是否支持 cookie 身份验证?
- sql - SQLite3 解码值
- html - 倾斜的 Div 不正确
- swiftui - 如何使用方法进行 API 调用
- css - 更改 react-boostrap 单选按钮颜色的正确方法是什么?
- svg - 如何将 svg 图像加载到 Xamarin 中的选项卡标题中