PHP MySQL: 挿入時の日付形式の処理
MySQL データベースに日付を挿入する場合、認識されている形式に準拠していることを確認することが重要です。フォーマット。 jQuery datepicker を使用するときに発生する一般的な問題は、ピッカーに表示される日付形式と MySQL で予期される形式が一致しないことです。
提供されたコードでは、jQuery datepicker の日付文字列は「mm/dd/yyyy」になっています。 ' 形式ですが、MySQL では直接認識されません。 MySQL の日付と時刻リテラルのドキュメントに記載されているように、有効な MySQL 日付リテラルは「YYYY-MM-DD」、「YY-MM-DD」、「YYYYMMDD」、または「YYMMDD」形式にすることができます。
Toこの問題を解決するには、次のことを行うことができます手順:
-
サポートされている形式を返すように Datepicker を構成する: jQuery datepicker の altField および altFormat オプションを使用して、サポートされている形式で日付を保存するための代替フィールドを指定します。
-
日付文字列を次のように変換しますSTR_TO_DATE(): MySQL の STR_TO_DATE() 関数を使用して、jQuery から受け取った日付文字列をサポートされている形式に変換します。
-
PHP で DateTime オブジェクトを使用します: PHP のDateTime クラス。操作および書式設定のためのさまざまなメソッドを提供します。日付。
-
日付文字列を手動で操作する: 日付文字列の個々のコンポーネントを抽出し、それらを正しい形式に連結します。
追加の考慮事項:
-
SQLインジェクションの脆弱性: 提供されたコードは準備されたステートメントを使用しないため、SQL インジェクションに対して脆弱です。悪意のある入力からコードを保護するには、常にプリペアド ステートメントを使用してください。
-
非推奨の MySQL 拡張機能: コードで使用されている mysql_* 関数は非推奨です。代わりに、mysqli または PDO_MySQL 拡張機能の使用を検討してください。
-
DATE カラムの推奨事項: 時間コンポーネントのない日付値の場合は、DATETIME または TIMESTAMP の代わりに MySQL の DATE タイプを使用することを検討してください。
以上がjQuery Datepicker から MySQL に日付を挿入するときに日付形式を適切に処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。