2016-11-30 87 views
1

我想要做的是,我認爲是向日期添加日期的簡單任務。在PHP中添加日期(從MySQL數據庫中檢索)

我具有存儲在一個MySQL表的日期,在一個稱爲meta_date柱,用的DATE類型(A日期,支持的範圍是1000年1月1日到9999-12-31)

我檢索這個日期從數據庫如下:

$thisId = 1; 
$dateQuery = mysqli_query($connection, "SELECT * FROM `sometable` WHERE `id` = '$thisId'"); 
$fetchDate = mysqli_fetch_assoc($dateQuery); 
$theDate = $fetchDate['meta_date']; 

現在我添加到這個日期的天數。

$newDate = date("Y-m-d", strtotime($theDate . " + 7 days")); 

接下來,我把它放回數據庫裏面有UPDATE查詢。

$editDate = mysqli_query($connection, "UPDATE `sometable` SET `meta_date` = '$newDate' WHERE `id` = '$thisId'"); 

但是,更新後日期始終返回爲0000-00-00

我錯過了什麼在這裏處理日期在PHP中處理的方式嗎?

編輯:我首先從數據庫中檢索到的數據(到$theDate)是「2016-11-30」。

回答

0

您可以使用MySQL的內置功能DATE_ADD()

SYNTEXT

DATE_ADD(date,INTERVAL expr type)凡日期是有效的日期表達和expr是要添加的間隔數。

對於你的情況

UPDATE sometable 
SET `meta_date` = DATE_ADD(`meta_date` , INTERVAL 7 DAY) 
WHERE `id` = '$thisId';