2016-04-23 67 views
0

我想把一個時間戳添加到我的數據庫(稍後顯示它,有點像博客)時。插入getdate()到列

這是我的代碼現在,但它不會註冊日期。

$sql = 'INSERT INTO `Content` (postContent, datePosted) VALUES ("'.(string)$content.'", "'SELECT getdate()'")'; 

在這種情況下,getdate()的正確語法是什麼?

編輯:這是在PHP中,也是日期必須與「內容」相關聯。

謝謝。編輯2:我是一個混亂,我可以只將CURRENT_TIMESTAMP放在MySQL的'默認',它會自動做到這一點。如果你自己嘗試,而不是花2個多小時試圖像我這樣手動修復這個問題,請使用這個方法。 謝謝你的幫助!

回答

0

你像一個字符串傳遞替換它像這樣。

你只是刪除從查詢

$sql = 'INSERT INTO `Content` (postContent, datePosted) VALUES ("'.(string)$content.'",SELECT getdate())'; 
+0

我得到了與上述解決方案相同的錯誤。我似乎無法弄清楚問題所在。 – Grymfogel1

0

雙引號和單引號替換此代碼

$sql = 'INSERT INTO `Content` (postContent, datePosted) VALUES ("'.(string)$content.'",SELECT getdate())'; 

有了這個代碼:

$date = getdate(); 

$sql = "INSERT INTO `Content` (postContent, datePosted) VALUES ('".$content."', '".$date[0]."')"; 

將存儲中的值datePosted具有以下格式:

自Unix紀元以來的秒數,類似於time() 返回的值,並由date()使用。

PHP Documentation

這對你意味着什麼,你就可以通過它只是比較time();通過創建一個$currentDate = getdate()或更容易輕鬆地比較你的數據庫值作爲完全一樣的格式。

讓我知道是否有幫助!

0

insert into [table_name]([column_name])values(now())