<input type="date">を未入力のまま送信した場合の問題

MySQL用語集

カテゴリー: エラー  閲覧数:445 配信日:2020-02-06 10:10


<input type="date">を未入力のまま送信した場合の問題


修正前のコード
$tweet_create_datetime = $this->request->getPost('tweet_create_datetime');

修正1回目のコード
・NULLを受け取ることを期待したが、変数をデバッグすると、空文字
・<input type="date">を未入力のまま送信した場合に、NULLを受け取ることは出来ない。また、未送信とすることも出来ない(空文字を必ず受信してしまう)
$tweet_create_datetime = $this->request->getPost('tweet_create_datetime') ?? NULL;
Noticeエラー回避 / PHP7以上で使用可能なnull合体演算子(??)を使用

修正2回目のコード
$tweet_create_datetime = $this->request->getPost('tweet_create_datetime');
if ('' == strval($tweet_create_datetime)){//空文字だったら;
 $tweet_create_datetime = NULL;
}



<input type="date" name="hoge">を未入力のまま送信した場合は、NULLを受け取りたい

指定期間人気ページランキング / 2020-5-28 → 2025-8-1
順位 ページタイトル抜粋 アクセス数
1 #1241 - オペランドに 1 個の列が必要です。 | エラー 3705
2 MySQL用語 1587
3 クエリエラー: #1265 - 列 'カラム名' の 行 ★ でデータが切り捨てられました。 | エラー 1382
4 SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry | エラー 1379
5 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value | エラー 974
6 Data truncated for column | エラー 637
7 where clause is ambiguous | エラー 619
8 Incorrect integer value | エラー 602
9 クエリエラー: #1294 - 列 'カラム名' に ON UPDATE旬は無効です。 | エラー 598
10 <> | 演算子 477
11 スキーマ | データベースの構造 451
12 #1067 - Invalid default value for 'id' | エラー 414
13 インデックス | 最適化 408
14 SELECT list is not in GROUP BY clause and contains nonaggregated column | エラー 272
15 遭遇例1.INT型カラムに空文字INSERT 254
16 #3106 - 'Fulltext index on virtual generated column' is not supported for generated columns. | エラー 249
17 エラーメッセージ / エラー原因 / エラー対応 248
18 問題発生 / ハマった点 / indexを確認 244
19 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ★★ at line △△ | エラー 240
20 phpMyAdmin上で、VARCHARデータ型カラム を FLOATデータ型カラム へ変更しようとしたら、エラー発生 232
2025/8/2 1:01 更新