こんにちは、PHP で password_hash() を使用してパスワードをハッシュしようとしています。この部分は問題ありませんが、ハッシュを比較すると、何があっても false が返されます。ログインするには、ユーザー アカウント データベースをチェックしてパスワード ハッシュを取得し、入力したパスワードと比較します。私のコードは次のようになります。
$password = $_SERVER["PHP_AUTH_PW"];
$hash = $row["password"];
if (password_verify($password, $hash)) {
// CREATE SESSION VARIABLES //
}
else{
header("HTTP/1.1 404 Not Found");
}
ご覧のとおり、入力されたパスワードは HTTP ヘッダーに取り込まれます。これをデータベース内のパスワードと直接比較できるため(ハッシュなしで)、これがパスワード文字列を混乱させるとは思いませんでした。何か案は?PHPのバージョンを3回チェックしましたが、パスワードをハッシュできるので、そうではありません。