我在使用以下代码登录用户时遇到问题。
似乎当我使用正确的用户密码执行 if 语句时,用户输入的密码和我的数据库中的密码不匹配。有人可以就我做错的事情给我意见吗?
$pwd = hashed password in my database
$pass = password users enter on logi page
if ($pwd === PwdHash($pass,substr($pwd,0,9))) {
function PwdHash($pwd, $salt = null)
{
if ($salt === null) {
$salt = substr(md5(uniqid(rand(), true)), 0, SALT_LENGTH);
}
else {
$salt = substr($salt, 0, SALT_LENGTH);
}
return $salt . sha1($pwd . $salt);
}