2013-11-27 26 views
0

我有一個允許用戶輸入日期範圍的屬性可用性(將來)。這些條目以m/d/y格式存儲在MySQL數據庫中。我試圖做到這一點,以便當前日取代財產的可用性結束日期時,條目將被刪除。我遇到的問題是,當用戶在新年(例如2014年6月27日)輸入日期時,立即刪除條目 - 即使它將來也是如此。如果我輸入12/28/2013,則輸入被保留。如果有人能弄清楚我做錯了什麼,我將不勝感激。如果當前日期已超過用戶輸入日期,則刪除SQL條目

這是相關代碼:

$current_date = date("m/d/Y"); 
    $wpdb->query("DELETE FROM `{$this->tradingpost_tbl}` WHERE end_date < '{$current_date}'"); 
    $wpdb->query("DELETE FROM `{$this->seekingpost_tbl}` WHERE end_date < '{$current_date}'"); 

END_DATE是形式

+0

'6/27/2014'不是一個有效的mysql日期字符串。如果你在mysql中進行日期數學/比較,你應該使用原生格式:'yyyy-mm-dd'。 –

回答

0

我猜你是存儲您的end_date場爲VARCHAR,因此,當您比較用戶輸入的日期它到其他「日期」,你實際上是將它與另一個字符串進行比較。因此,當您嘗試比較「10/10/2013」​​到2014年5月10日它應該刪除它,因爲5小於10 ..

您需要做的是將日期保存在正確的字段中,如「日期」,「日期時間」或「時間戳」字段。

相關問題