2015-09-28 33 views
0

這是一些好奇的行爲。在一個WP網站中,有一點代碼用日期字符串來更新表格。WP:空白日期/時間從php時間()

好奇的是有些時候字符串($ today)被添加到數據庫中,而有些時候它不會(NULL值)。

DB是MySQL。

其他字段(active)每次都會正確更新。

 $today = date('Y-m-d',time()); 

     $upd=$my_db->prepare("UPDATE my_table SET active=1, my_date='".$today."' WHERE field_number=?"); 
     $upd->bindParam(1, $field_number, PDO::PARAM_INT); 
     $upd->execute(); 

有沒有看到這?我在這上面拉了我的頭髮...我已經添加了一個小的業餘解決方法,我不知道它是否會起作用:

用替換date('Y-m-d',time());,即使用WP的時間戳功能...應該沒有必要,雖然...

+1

不知道這是否有幫助,但您不必將time()傳入日期,如果第二個參數爲空,則它會自動獲取當前時間。 mysql中列的數據類型是什麼? – Jono20201

+0

這是一個日期字段 –

+1

您是否真的必須在服務器端計算日期時間,而不是在數據庫層?我的意思是,簡單的有什麼問題...'UPDATE my_table SET active = 1,my_date = CURDATE()WHERE field_number =?'? – raina77ow

回答

2

在簡單的日期時間計算中不需要涉及PHP代碼;數據庫可以用它自己的stack of related functions輕鬆管理它。只需將您的查詢改寫成類似...

UPDATE my_table SET active=1, my_date=CURDATE() WHERE field_number=?