这可能看起来非常简单,但我已经得到各种错误,具体取决于我如何处理一个不返回任何内容的查询。
$query = "SELECT * FROM messages WHERE id > ".$messageId;
$result =mysql_query($query);
$time = time();
while(time()-$time<60 && $result==false)
{
$result = mysql_query($query);
}
if(result != false)
//Encode response
else
//return nothing
如何检查我的mysql_query()是否返回了什么?
答案 0 :(得分:2)
您可以使用mysql_num_rows().
检查返回的行数假设你的循环是查询某些东西,直到得到结果,它将是
while(time()-$time<60 && $num_rows == 0)
{
$result = mysql_query($query);
$num_rows = mysql_num_rows($result);
(不确定你在这里做什么是一个非常好的主意,因为它可能给数据库服务器带来了可怕的负担,但那是一个不同的问题)
mysql_query()仅会针对“真实”错误返回false
,例如错误的查询或丢失的连接。