##解決したいこと
タイトルの通りですが、生年月日のバリデーションチェックにおいて、checkdate関数でバリデーションした時、Notice: Undefined offsetエラーが出ます。
空で送信→offsetエラー
正しい形式の2020-1-1などで送信→エラーなし
あああなど、文字列を送信→Warning: checkdate() expects parameter 3 to be intエラー
以下バリデーション
$birth = filter_input(INPUT_POST,'birth'); 以下略 生年月日のバリデーション list($Y, $m, $d) = explode('-', $birth); if(empty($birth) || !checkdate($m, $d, $Y) === true) { $errors['birth'] = "誕生日は必須です。また、存在する年月日を入力してください。※形式にも注意"; }
##調べたこと
Notice: Undefined offsetは、配列で存在しない位置のインデックスを参照したときに発生する。
##コードを参考にしたところ
日付型のデータをチェックする
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。