PHP MySQL: Mengendalikan Format Tarikh untuk Sisipan
Apabila memasukkan tarikh ke dalam pangkalan data MySQL, adalah penting untuk memastikan ia mematuhi yang diiktiraf format. Isu biasa yang dihadapi semasa menggunakan jQuery datepicker ialah ketidakpadanan antara format tarikh yang dipaparkan dalam pemilih dan format yang dijangkakan oleh MySQL.
Dalam kod yang disediakan, rentetan tarikh daripada jQuery datepicker adalah dalam 'mm/dd/yyyy ', yang tidak diiktiraf secara langsung oleh MySQL. Seperti yang dinyatakan dalam dokumentasi Date and Time Literals MySQL, literal tarikh MySQL yang sah boleh dalam format 'YYYY-MM-DD', 'YY-MM-DD', 'YYYYMMDD' atau 'YYMMDD'.
Kepada menyelesaikan isu ini, anda boleh mengambil langkah berikut:
-
Konfigurasikan Datepicker untuk Kembalikan Format yang Disokong: Gunakan pilihan altField dan altFormat dalam jQuery datepicker untuk menentukan medan alternatif untuk menyimpan tarikh dalam format yang disokong.
-
Tukar Rentetan Tarikh dengan STR_TO_DATE(): Tukar rentetan tarikh yang diterima daripada jQuery menggunakan fungsi STR_TO_DATE() MySQL kepada yang disokong format.
-
Gunakan Objek DateTime dalam PHP: Parsing rentetan tarikh menggunakan kelas DateTime PHP, yang menyediakan pelbagai kaedah untuk memanipulasi dan memformat tarikh.
-
Secara manual Manipulasi Rentetan Tarikh: Ekstrak komponen individu rentetan tarikh dan gabungkannya ke dalam yang betul format.
Pertimbangan Tambahan:
-
Kerentanan Suntikan SQL: Kod yang disediakan terdedah kepada suntikan SQL seperti yang berlaku tidak menggunakan pernyataan yang disediakan. Sentiasa gunakan penyataan yang disediakan untuk melindungi kod anda daripada input berniat jahat.
-
Sambungan MySQL yang ditamatkan: Fungsi mysql_* yang digunakan dalam kod itu ditamatkan; pertimbangkan untuk menggunakan sambungan mysqli atau PDO_MySQL sebaliknya.
-
Pengesyoran untuk Lajur DATE: Untuk nilai tarikh tanpa komponen masa, pertimbangkan untuk menggunakan jenis DATE MySQL dan bukannya DATETIME atau TIMESTAMP.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Format Tarikh Dengan Betul Apabila Memasukkan Tarikh daripada jQuery Datepicker ke dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!