gpt4 book ai didi

php - 如何使用数据库中的哈希值进行 password_verify()

转载 作者:行者123 更新时间:2023-11-28 23:51:01 29 4
gpt4 key购买 nike

尝试从数据库验证散列密码,用户通过 POST 输入。经过一些简短的研究,这个问题似乎与无法将 mysqli_query 转换为字符串有关,尽管我不知道如何正确地做到这一点,因此我从另一个 SO 问题中添加了 fetch_object() 等。我还充分考虑了为 varchar(255) 设置的列的长度。感谢任何帮助或指导,谢谢。

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$password = $_POST['password'];
$db_password = mysqli_query($conn, 'SELECT password FROM sec')->fetch_object()->password;

if (password_verify($password, $db_password)) {
echo 'Password is valid!';
} else {
echo 'Invalid password.';
}
?>

最佳答案

首先从数据库中获取密码哈希值,然后将用户输入的密码转换成哈希值。通过函数password_verify()比较这两个值,就可以得到正确的结果。

关于php - 如何使用数据库中的哈希值进行 password_verify(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32584355/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com