【发布时间】:2011-02-20 23:21:44
【问题描述】:
我正在编写一个登录表单,它将给定的密码转换为带有md5($password) 的MD5 散列,然后将其与我的数据库中的已散列记录相匹配。我确信在这种情况下数据库记录是正确的。但是,它没有让我登录并声称密码不正确。
这是我的代码:
$password = mysql_real_escape_string($_POST["password"]);
...more code...
$passwordQuery = mysql_fetch_row(mysql_query(("SELECT password FROM users WHERE email = '$userEmail'")));
...some code...
elseif(md5($password) != $passwordQuery)
{
$_SESSION["noPass"] = "That password is incorrect.";
}
...more code after...
我尝试只提取 md5($password) 的值,当我在视觉上比较它时,它匹配了。但是,我无法在 PHP 中进行比较。可能是因为 MySQL 的记录是文本存储的,而 MD5 是别的东西?
【问题讨论】:
标签: php sql mysql validation md5