【发布时间】:2026-02-09 10:45:01
【问题描述】:
我正在尝试使用电子邮件确认进行登录系统,因此当用户确认电子邮件时,数据库中的哈希值从 MD5 值更改为“已确认”,然后在我使用的 logon.php 中:
if (isset($_POST['submit']))
{
$confirmed = 'confirmed';
$username = $_POST['username'];
$password = $_POST['password'];
$query = "SELECT id, username FROM users WHERE username = ? AND hash = ? AND password = SHA(?) LIMIT 1";
$statement = $databaseConnection->prepare($query);
$statement->bind_param('sss', $username, $password, $confirmed);
$statement->execute();
$statement->store_result();
if ($statement->num_rows == 1)
{
$statement->bind_result($_SESSION['userid'], $_SESSION['username']);
$statement->fetch();
header ("Location: index.php");
}
else
{
echo "Username/password combination is incorrect.";
}
}
我已经尝试了所有方法,但是$statement->num_rows 总是返回 0,有人可以帮助我吗?请
【问题讨论】:
-
除此之外,在您的
header重定向行之后放置一个exit