首頁 > 後端開發 > php教程 > 如何使用 PHP 正確地將日期從 jQuery Datepicker 插入 MySQL?

如何使用 PHP 正確地將日期從 jQuery Datepicker 插入 MySQL?

Susan Sarandon
發布: 2024-11-28 08:36:15
原創
716 人瀏覽過

How to Correctly Insert Dates from jQuery Datepicker into MySQL Using PHP?

使用 PHP 將日期格式插入 MySQL

使用 MySQL 資料庫時,在插入過程中正確格式化日期值至關重要。一個常見問題是以不正確的格式插入日期,從而導致資料庫錯誤。

問題:

您正在使用 jQuery 日期選擇器,它會傳回以 'MM 為單位的日期/DD/YYYY' 格式。但是,MySQL 需要特定格式的日期,例如「YYYY-MM-DD」、「YY-MM-DD」或「YYYYMMDD」。以不正確的格式插入日期將導致插入“0000-00-00 00 00 00”。

解決方案:

有多種方法可以解決此問題:

  • 使用日期選擇器的altFieldaltFormatat選項: 透過設定altField 和altFormat選項來配置日期選擇器以提供受支援格式的日期。例如:
<input type="hidden">
登入後複製
  • 使用MySQL 的STR_TO_DATE() 函數轉換字串:使用STR_TO_DATE() 將從jQuery 接收到的字串日期轉換為有效字串的MySQL格式)函數:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
登入後複製
  • 使用PHP 的DateTime 類別: 將字串轉換為PHP DateTime 對象,然後取得適當的格式化字串或UNIX時間戳記:
$dt = \DateTime::createFromFormat('m/d/Y', $_POST['date']);
$date = $dt->format('Y-m-d'); // Formatted string
$timestamp = $dt->getTimestamp(); // UNIX timestamp
登入後複製
  • 手動操作string: 手動將日期字串拆分為各個組成部分,並以正確的格式進行組裝:
$parts = explode('/', $_POST['date']);
$date = "$parts[2]-$parts[0]-$parts[1]";
登入後複製

注意:

  1. 避免SQL 注入: 確保您使用準備好的語句來防止SQL 注入
  2. 使用DATE 類型而不是DATETIME 或TIMESTAMP: 建議使用DATE 類型來儲存時間成分的純日期值。

附加說明:

  • mysql_* 函數是在 PHP 5.5.0 中已棄用,應替換為 mysqli 或 PDO_SQLSQL 擴充。
  • STR_TO_DATE() 函數需要將 date_format 系統變數設定為解析日期字串的適當格式。

以上是如何使用 PHP 正確地將日期從 jQuery Datepicker 插入 MySQL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板