mysql_num_rows()期望参数1是资源,布尔值是给定的

Sim*_*ini 9 php

可能重复:
警告:mysql_num_rows()期望参数1是资源,

我是这个论坛的新手.我正在我的网站内构建搜索.我的DB有问题.它给了我这个:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.5.0\www\searchscript\search.php on line 86
Run Code Online (Sandbox Code Playgroud)

我将向您展示它给我这样的错误的代码部分

line 82: $query = "SELECT * FROM dreams WHERE titolo,titch LIKE \"%$trimmed%\" ORDER BY id_dreams DESC "; 
line 85: $numresults=mysql_query($query);
line 86: $numrows=mysql_num_rows($numresults); //error
Run Code Online (Sandbox Code Playgroud)

现在我试着看看查询背后的问题是什么,它告诉我这个:

SELECT * FROM dreams WHERE titolo, titch LIKE "%tags%" ORDER BY id_dreams DESC 
Run Code Online (Sandbox Code Playgroud)

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在第1行"titch LIKE"%tags%"ORDER BY id_dreams DESC"附近使用正确的语法

这背后的代码是:

$query = "SELECT * FROM dreams WHERE titolo, titch LIKE \"%$trimmed%\" ORDER BY id_dreams DESC "; 
$result = mysql_query($query) or die($query."<br/><br/>".mysql_error());
Run Code Online (Sandbox Code Playgroud)

pid*_*l0r 16

mysql_query返回一个布尔值,这意味着sql查询可能失败了,你得到一个错误的返回而不是mysql资源.

你检查过你的查询了吗?


Lig*_*ica 2

您忘记检查是否$num_results是 MySQL 结果资源。在这种情况下,您的查询出错了,因此改为这样FALSE。

重新阅读文档并确保针对mysql_query所有可能的情况进行编程。