PHP MySQL 插入日期格式:解決無效日期問題
將日期插入MySQL 資料庫有時會導致資料庫出現錯誤儘管代碼中的日期格式正確,但僅插入“0000-00-00 00 00 00”。當 MySQL 無法辨識日期格式時,就會出現此問題。
要解決此問題,必須遵循MySQL 接受的指定日期格式:
在給定的程式碼中,日期以以下格式接收: 08/25/2012',MySQL 無法辨識。因此,我們需要將日期格式修改為支援的格式之一。
解決日期格式問題的選項:
altField 和<code data-type="javascript">傳遞日期的格式到PHP 腳本。例如,<code data-type="javascript">altFormat: "yyyy-mm-dd".
使用STR_TO_DATE() 函數:使用STR_TO_DATE() 將日期字串轉換為MySQL 支援的格式功能。範例:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
使用DateTime 物件: 將日期字串轉換為PHP DateTime 對象,取得格式化字串,並在插入查詢中使用它。範例:
$dt = \DateTime::createFromFormat('m/d/Y', $_POST['date']); $date = $dt->format('Y-m-d'); INSERT INTO user_date VALUES ('', '$name', '$date')
操作日期字串: 手動操作日期字串,將其轉換為有效的 MySQL 格式。範例:
$parts = explode('/', $_POST['date']); $date = "$parts[2]-$parts[0]-$parts[1]"; INSERT INTO user_date VALUES ('', '$name', '$date')
其他注意事項:
以上是如何修正 PHP 和 MySQL 中的「0000-00-00 00:00:00」日期插入錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!