2011-05-20 34 views
0

下面的代碼應該根據if($row["datesubmitted"] > $livetime){啓動CSS。如果「日期提交」小於1小時,CSS應該生效。但它不起作用。基於時間的IF聲明不起作用

任何想法爲什麼不呢?

爲了便於比較,相同的代碼適用於IF語句if($row["topten"] == 1){

編輯:在MySQL,datesubmitted是類型=時間戳和默認= CURRENT_TIMESTAMP。

由於提前,

約翰

$livetime = time()-3600; 


$result = mysql_query($sqlStr); 

$arr = array(); 
echo "<table class=\"samplesrec\">"; 
while ($row = mysql_fetch_array($result)) { 
    $dt = new DateTime($row["datesubmitted"], $tzFrom); 
    $dt->setTimezone($tzTo); 

    if($row["datesubmitted"] > $livetime){ 
+0

是它可能比較'DateTime'對象與純時間戳? – ThiefMaster 2011-05-20 23:49:05

+0

也許提供給我們一個完整的代碼片段,以便我們確定我們正在調試什麼?你能提供代碼直到while循環的結尾嗎? – 2011-05-20 23:49:14

+0

是'dateubmitted'的值是一個unix時間戳嗎? – RobertPitt 2011-05-20 23:49:28

回答

0

也許你可以嘗試使用的strtotime,這樣的..

if(strtotime($row["datesubmitted"]) > $livetime)

它會因爲你的$行[ 「datesubmitted」]的工作是從MySQL datetime格式..

0

使用UNIX_TIMESTAMP(datesubmitted) as datesubmitted在您的查詢,相對於其他時間戳時使用該值是(作爲一個時間戳)。