2011-08-31 40 views
0

我希望$minutes在查询中以最短的datecommented(以分钟表示)。当我回显$minutes时,我得到一个空白结果。我究竟做错了什么?从查询中发现日期

$queryuidcount = "SELECT loginid, datecommented 
    FROM comment 
    WHERE (HOUR(NOW()) - HOUR(datecommented)) <= 1 
    AND loginid = '$uid' 
ORDER BY datecommented ASC 
    LIMIT 1'"; 
$row2 = mysql_fetch_array($queryuidcount); 
$minutes = $row2["datecommented"]; 

回答

0

你需要给你调用的结果mysql_fetch_array()之前您的查询执行mysql_query()。试试这个:

$result = mysql_query('SELECT loginid, datecommented FROM comment WHERE (HOUR(NOW()) - HOUR(datecommented)) <= 1 AND loginid = '$uid' ORDER BY datecommented ASC LIMIT 1'); 

$row = mysql_fetch_array($result); 

$minutes = $row['datecommented']; 

如果查询返回多行,你需要通过他们while循环迭代:

while($row = mysql_fetch_array($result)) { 
    //Fetch values from $row 
} 

而且,考虑使用PDO,而不是MySQL的函数族。