Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Memasukkan Tarikh dengan Betul daripada Pemetik Tarikh jQuery ke dalam Pangkalan Data MySQL?

Bagaimana untuk Memasukkan Tarikh dengan Betul daripada Pemetik Tarikh jQuery ke dalam Pangkalan Data MySQL?

Linda Hamilton
Lepaskan: 2024-11-28 07:15:12
asal
485 orang telah melayarinya

How to Properly Insert Dates from a jQuery Datepicker into a MySQL Database?

Format tarikh sisip mysql PHP

Apabila menggunakan datepicker jQuery dengan format 'MM/DD/YYYY' untuk memasukkan tarikh ke dalam Pangkalan data MySQL, anda mungkin menghadapi ralat dengan tarikh yang dimasukkan disimpan sebagai '0000-00-00 00:00:00'. Isu ini timbul kerana format 'MM/DD/YYYY' tidak diiktiraf sebagai literal tarikh yang sah oleh MySQL.

Menurut dokumentasi MySQL pada Date and Time Literals, MySQL mengiktiraf nilai DATE dalam format berikut:

  • 'YYYY-MM-DD' atau 'YY-MM-DD' (dengan atau tanpa pembatas seperti '/', '-' atau '.')
  • 'YYYYMMDD' atau 'YYMMDD' (tanpa pembatas)
  • Nombor dalam format YYYYMMDD atau YYMMDD, jika ia masuk akal sebagai tarikh

Untuk menyelesaikan isu ini, anda boleh meneroka perkara berikut pilihan:

  1. Gunakan objek DateTime PHP untuk menukar tarikh:

Buat objek DateTime daripada rentetan datepicker jQuery:

$date = \DateTime::createFromFormat('m/d/Y', $_POST['date']);
Salin selepas log masuk

Kemudian, formatkan tarikh menjadi disokong format:

$date_string = $dt->format('Y-m-d');
Salin selepas log masuk
  1. Gunakan fungsi STR_TO_DATE() MySQL:

Tukar rentetan datepicker jQuery kepada format serasi MySQL menggunakan STR_TO_DATE () fungsi:

INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
Salin selepas log masuk
  1. Memanipulasi rentetan secara manual:

Pisah rentetan datepicker jQuery kepada bahagian untuk bulan, hari dan tahun, kemudian buat rentetan serasi MySQL:

$parts = explode('/', $_POST['date']);
$mysql_date = "$parts[2]-$parts[0]-$parts[1]";
Salin selepas log masuk
  1. Konfigurasikan pemetik tarikh jQuery:

Konfigurasikan pemetik tarikh untuk mengeluarkan tarikh dalam format yang disokong menggunakan dateFormat atau altField altFormat pilihan:

$( "selector" ).datepicker({
    dateFormat: "yyyy-mm-dd"
});
Salin selepas log masuk

atau

$( "selector" ).datepicker({
    altField: "#actualDate"
    altFormat: "yyyy-mm-dd"
});
Salin selepas log masuk

Awas:

Adalah penting untuk melindungi daripada suntikan SQL dengan menggunakan pernyataan yang disediakan. Selain itu, pertimbangkan untuk menggunakan jenis data DATE dalam MySQL untuk menyimpan tarikh, kerana ia direka khusus untuk tujuan ini.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Tarikh dengan Betul daripada Pemetik Tarikh jQuery ke dalam Pangkalan Data MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan