2012-04-18 79 views
-2

可能重复:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in selectmysql_result()预计参数1是资源,鉴于布尔错误

我的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 
+1

你可以让这个代码更复杂吗? – 2012-04-18 00:44:53

+1

我敢打赌你没有连接到数据库。确保你可以连接 - 凭证是一样的吗?你有选择正确的数据库吗? – Ryan 2012-04-18 00:45:40

+0

@minitech:它可能是'$ id'中的奇怪值 – zerkms 2012-04-18 00:48:16

回答

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(); 
    } 
} 
0

的解决方案,这是该查询被搜索POST表。而不是邮政表。

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

相关问题