ユーザーが登録してログインするとき、私は同じパスワードハッシュ関数を使用してプレーンテキストパスワードをハッシュします。登録時とログイン時のPHPパスワードのハッシュ値が一致しない
password_hash($password, PASSWORD_DEFAULT)
パスワードが同じではありませんが。
私は、同じパスワードで2人のユーザーを登録するだけで、この別の方法を証明できます。
例えば "管理者" は、一つのユーザに "$ 2Y $ 10 $ SyqILazLbo4jJVYvxYfwW.WgHUnSi.cRMETWoMjZXwMNa4H4tYELK"
、および他の "$ 2Y $ 10 $ gXfVz6oH4afxAL.7ytFJseZV3VERxbSYXqN7FYsRzH4IrjJw9uyO6" に変わります。これは同じなので、ユーザーキャンがこれまでにpassword_hashログインすることはありません。
を私が間違っているのは何を意味しますか?
ような何か。なぜあなたは決してログインできないのだろうと言っているのですか? –
ログインするには、ユーザ名とパスワードを入力します。パスワードはデータベースにハッシュされなければならないので、username = usernameでなければなりません。パスワードはパスワード=必須です。毎回ハッシュが異なる場合、パスワードはどのように等しくなりますか? – user3822370
これは機能の仕組みなので、心配する必要はありません。 –