PHP mysql insert date format
「MM/DD/YYYY」形式の jQuery 日付ピッカーを使用して日付を挿入する場合MySQL データベースでは、挿入された日付が「0000-00-00」として保存されるとエラーが発生する可能性があります。 00:00:00'。この問題は、「MM/DD/YYYY」形式が MySQL によって有効な日付リテラルとして認識されないために発生します。
日付と時刻リテラルに関する MySQL ドキュメントによると、MySQL は次の形式の DATE 値を認識します。
この問題を解決するには、次のことを検討してください。オプション:
jQuery 日付ピッカー文字列から DateTime オブジェクトを作成します:
$date = \DateTime::createFromFormat('m/d/Y', $_POST['date']);
次に、日付をサポートされている形式にフォーマットします。形式:
$date_string = $dt->format('Y-m-d');
STR_TO_DATE を使用して jQuery 日付ピッカー文字列を MySQL 互換形式に変換します() function:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
jQuery の datepicker 文字列を月、日、年の部分に分割し、 MySQL互換を作成するstring:
$parts = explode('/', $_POST['date']); $mysql_date = "$parts[2]-$parts[0]-$parts[1]";
dateFormat または altField altFormat を使用して、サポートされている形式で日付を出力するように datepicker を構成します。オプション:
$( "selector" ).datepicker({ dateFormat: "yyyy-mm-dd" });
または
$( "selector" ).datepicker({ altField: "#actualDate" altFormat: "yyyy-mm-dd" });
注意:
準備されたステートメントを使用して SQL インジェクションから保護することが重要です。さらに、日付の保存には MySQL の DATE データ型を使用することを検討してください。これは、この目的のために特別に設計されているためです。
以上がjQuery Datepicker から MySQL データベースに日付を適切に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。