「パスワード」と「確認用パスワード」の一致チェックのバリデーション方法・Laravel

【Laravel】「パスワード」と「確認用パスワード」の一致チェックの方法【バリデーション】

Webサイトの会員情報の登録を行う際に、「パスワード」と「確認用パスワード」の入力を求められることがあります。

本人が想定したパスワードを入力したか確認するためのものなので、「パスワード」と「確認用パスワード」で異なる入力値だった場合、エラーになりますよね。

本来なら「if分を追加して入力値が一致しているかどうかチェックする」など、プログラムを書く必要があります。

Laravelだとバリデーションでちょっと記述するだけで、簡単に「パスワード」と「確認用パスワード」の一致チェックを行えます!

この記事ではバリデーションを行う上での注意点もあわせて紹介します。

バージョン9.51.0の「Laravel」で説明します

目次

ビューファイルの記述方法

入力フォームの<input>タグの書き方は以下の通りです。

    パスワード:<br>
    <input type="password" name="password"><br>

    確認用パスワード:<br>
    <input type="password" name="password_confirmation"><br>

「パスワード」と「確認用パスワード」の一致チェックを行う場合、入力フォームの<input>タグのnameに注意しなければなりません。

今回の場合、「パスワード」のnameが「password」。
「確認用パスワード」のnameが「password_confirmation」にしていますね。

1つ目の「パスワード」のnameが「xxxx」だった場合、「確認用パスワード」のnameは「xxxx_confirmation」にする必要があります。

この書き方をすることで、後々のバリデーションを簡単に行えるようになります。

間違えないようにしましょう!

コントローラーファイルのバリデーション記述方法

次にバリデーションの記述方法を紹介します。

        $request->validate([
            'password' =>['required','confirmed']
        ]);

上記は「required(必須チェック)」と「confirmed(確認用と一致チェック)」の2つを記述してます。

この「confirmed」と書くだけで、「password」と「password_confirmation」の入力値が同じか否かチェックを行うことができます。

これだけで「パスワード」と「確認用パスワード」の一致チェックのバリデーションは終わりです!

まとめ

「パスワード」と「確認用パスワード」の一致チェックのバリデーションの書き方について紹介しました。

使うバリデーションは以下の「confirmed」です。

confirmed

ビューファイルでのinputタグの書き方はこちらです!

    パスワード:<br>
    <input type="password" name="password"><br>

    確認用パスワード:<br>
    <input type="password" name="password_confirmation"><br>

1つ目の「パスワード」のnameが「xxxx」だった場合、「確認用パスワード」のnameは「xxxx_confirmation」にする必要があります。

注意点さえ押さえておけば、すごく便利なバリデーションですね!

ビューファイルのinputタグの書き方だけ気をつけて、「confirmed」を活用しましょう!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次