mysql_result()期望参数1是资源,布尔给定错误

时间:2012-04-18 00:44:16

标签: php mysql

  

可能重复:
  mysql_fetch_array() expects parameter 1 to be resource, boolean given in select

我的SQL查询如下。它在我的本地主机上工作正常,但当我上传到我的Linux服务器时,我得到上述错误。有什么问题?

这适用于我的本地主机,为什么它不能在我的服务器上运行?是文件路径错误吗? MySQL数据库是相同的,我有一个服务器的特定连接文件,它与本地主机不同。我的其他数据库查询正在运行。

这不是$ id变量的问题,因为我尝试通过将其替换为1来测试它,并且我的错误消息是相同的。

与数据库的连接也不是问题。此文件有许多其他正常工作的查询。

    return (mysql_result(mysql_query("SELECT COUNT('id') FROM POSTS WHERE id=$id"),0)==0)?false:true;// this query works. because it doesnt have '' on the words posts/id

2 个答案:

答案 0 :(得分:1)

错误检查是一件好事:

function getResult() 
{
   try {
      $q = mysql_query( ... );

      if ($q === FALSE)
         throw new Exception(mysql_error(), mysql_errno());

      // Do stuff with the query results here.
   } catch(Exception $e) {
      // Do the error handling here
      //   Message is kept in $e->getMessage();
      //   MySQL specific error code is in $e->getCode();
   }
}

答案 1 :(得分:0)

解决方法是查询正在搜索POST表。而不是邮政表。

表名在我的服务器上显然区分大小写,但在localhost上不区分大小写。