所以我使用的是新的PHP 5.5 Password Hashing API,我不确定我是否正确使用了它.
我已经尝试自动重新登录每次登录,有时我失败了,即使哈希结果是相同的,我觉得我做错了.
它可能是我可能错误的查询函数,因为当我检查phpMyAdmin时哈希甚至没有改变.
if (password_needs_rehash($result_row->user_password_hash, PASSWORD_DEFAULT))
{
$newhash = password_hash(
$_POST['user_password'], PASSWORD_BCRYPT,
['cost' => 12, 'salt' => 'superfreakingsonicdude',]
);
// update hash in database
$this->connection->query(
"UPDATE users SET user_password_hash='" . $newhash .
"' WHERE user_name='".$result_row->user_name."'"
);
}
Run Code Online (Sandbox Code Playgroud)