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

如何正確地將日期從 PHP 插入 MySQL?

Susan Sarandon
發布: 2024-11-27 03:56:12
原創
316 人瀏覽過

How to Properly Insert Dates from PHP into MySQL?

如何使用PHP 在MySQL 中插入日期

將日期插入MySQL 可能是一項令人困惑的任務,尤其是在使用不同的日期格式時。本文將示範如何解決使用 PHP 和 MySQL 插入日期的常見問題,並將重點放在「PHP mysql 插入日期格式」問題。

問題

使用jQuery 日期選擇器時,日期格式通常採用“MM/DD/YYYY”的形式(例如, “2012 年8 月25 日” )。但是,MySQL 要求日期值是以下之一格式:

  • 'YYYY-MM-DD'
  • 'YY-MM-DD'
  • YYYMMDD
  • YYMMDD

嘗試在中插入日期"MM/DD/YYYY" 格式會出錯並插入 '0000-00-00 00:00:00'。

解決方法

有幾個解決此問題的選項:

  1. 設定Datepicker:
  2. 使用STR_TO_DATE(): 轉換日期字串使用STR_TO_DATE() 轉換為MySQL 格式函數:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
登入後複製
  1. 轉換為PHP DateTime: 建立PHP DateTime物件並格式化日期或擷取時間戳記:
$dt = DateTime::createFromFormat('m/d/Y', $_POST['date']);
$date = $dt->format('Y-m-d'); // formatted string
$timestamp = $dt->getTimestamp(); // UNIX timestamp for FROM_UNIXTIME() function
登入後複製
  1. 手動操作字串:打破將日期字串分割成所需的格式:
$parts = explode('/', $_POST['date']);
$date = "$parts[2]-$parts[0]-$parts[1]";
登入後複製

重要說明

    使用準備好的語句來防止SQL 注入。
  • mysql_* 函數已棄用。考慮使用 mysqli 或 PDO_MySQL 代替。
  • 考慮使用 DATE 類型而不是 DATETIME 或 TIMESTAMP 來儲存日期。
透過實現這些解決方案之一,您可以成功地將日期插入到正確的格式寫入 MySQL。

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

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