php - 当 MySQL 什么都不返回时 $result 会是什么?

标签 php javascript ajax long-polling

这看起来简单得可笑,但根据我处理不返回任何内容的查询的方式,我遇到了各种各样的错误。

$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() 是否返回了任何内容?

最佳答案

您可以使用 mysql_num_rows(). 检查返回的行数

假设你的循环是查询一些东西直到它得到结果,它会是

while(time()-$time<60 && $num_rows == 0)
{
    $result = mysql_query($query);
    $num_rows = mysql_num_rows($result); 

(不确定你在这里做的是不是一个好主意,因为它可能会给数据库服务器带来可怕的负担,但这是一个不同的问题)

mysql_query()将仅在“真实”错误时返回 false,例如拼写错误的查询或丢失的连接。

关于php - 当 MySQL 什么都不返回时 $result 会是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2614169/

相关文章:

php - HTML 表格转数组 PHP

Javascript jQuery 插件 DataTables 取消选择元素

jquery - AngularJS,使用没有后退按钮刷新的路由

Debian 上的 PHP 和 Informix - 如何安装/配置 PDO

php - 获取特定分类术语的高级自定义字段组

php - 使用 MY_Model

javascript - 如何让 fullcalendar 读取日期/时间?

javascript - coffeescript 中的单例类

javascript - 在 $.POST 上获取 ERR_EMPTY_RESPONSE

javascript - 通过交换其内容在同一个 div 中请求确认?