我想创建一个全文搜索,在多个列中搜索字符串。我在互联网上找到了匹配和反对的方式并尝试了它。
那是我离开的地方:
$value = $_POST['value'];
$rechnung_search = mysql_query("SELECT * FROM testTable WHERE MATCH(`name`,`food`) AGAINST ('$value')");
while($row = mysql_fetch_array($testTable_search)){
echo $row['name'];
echo $row['food'];
}
使用此代码即可获得一个名为
的错误Warning: mysql_fetch_array() expects parameter 1 to be resource
据我所知,如果查询中存在错误信息,则会出现此错误。但我不知道错误的信息是什么。所有列都存在。我做错了什么?
感谢您的阅读!希望你能帮助我解决这个问题。
答案 0 :(得分:0)
像这样的东西
SELECT * FROM table WHERE MATCH (field1, field2, field3, field4)
AGAINST ('keyword' IN BOOLEAN MODE)
请使用mysqli_ *而不是mysql_ 。因为在PHP7中删除了mysql _ 。
此外,您的代码中存在错误。而不是
while($row = mysql_fetch_array($testTable_search))
应该是
while($row = mysql_fetch_array($rechnung_search))