質問: $sql; // $e->getMessage() でエラー内容を参照可能(デバッグ時のみ表示) echo $e->getMessage(); } } } ?> ログイン ログイン画面 ログインフォーム ユーザーID"> パスワード 新規登録フォーム ``` 使用言語 ``` PHP MySQL html ``` ### 補足情報(FW/ツールのバージョンなど) ネットにあったソースコードをもとに作成しています。 Xampp v3.2.2 ,phpMyadminを使用しています。 データベース名:userData テーブル名:user カラム; id,int(11),primary key,AUTO_INCREMENT name,varchar(20) password,varhar(100) 参考にしたサイト https://qiita.com/KosukeQiita/items/b56b3004413c999b9858 初めての投稿でしていたらないところもあると思いますがよろしくお願いします。
回答: すでに Kosuke_Shibuya さんが指摘してますが、DB に突っ込んだ値が間違っています。 パスワードの検証に password_verify() を使用しているので、DB に投入するのはパスワードのハッシュ値です。 この場合は、password_hash() で生成された値を使用するのが一般的です。 作り方のサンプルはマニュアルにあります。 例1 password_hash() の例 コマンドラインなら `php -r "echo password_hash(\"rasmuslerdorf\", PASSWORD_DEFAULT).\"\n\";"` **余談** 学習用途だと思いますが、今から学習するなら php 7系とそれに準じた教本使用したほうがイイですよ。 質問のコードは書き方が古いです。