mySQL布尔全文搜索不返回任何结果

时间:2012-05-19 19:34:18

标签: php mysql

  

可能重复:
  Warning: mysql_fetch_* expects parameter 1 to be resource, boolean given error

我正在尝试在mySQL中编写全文搜索查询,但我遇到了一些麻烦。

我的数据库中的示例关键字单元格包含一串字符串(例如:“袋装动物玩具苹果”)。我100%确定'玩具'是我在db中的一个项目的关键字之一。为什么以下搜索查询不会返回任何结果?

这是我尝试使用的查询:

$results = mysql_query("SELECT keywords,name FROM files WHERE 
                         MATCH (keywords) AGAINST ('+toys') IN BOOLEAN MODE");

我收到以下错误:

Warning: mysql_fetch_array() expects parameter 1 to be 
resource, boolean given in C:\xampp\...etc...\ on line 192

1 个答案:

答案 0 :(得分:1)

你的查询失败并返回一个布尔值false,你在fetch调用中盲目使用它。这意味着您的查询逻辑中没有错误处理。将查询调用更改为

$results = mysql_query('SELECT yada yada yada') or die(mysql_error());
                                               ^^^^^^^^^^^^^^^^^^^^^^

这样您就可以准确了解查询的问题。

永远不要假设数据库操作成功。即使您的SQL语法完全有效,也有太多其他原因导致无法检查。