在
下面的代码中var_dump($row);
显示NULL
$query = "SELECT * FROM maintable WHERE Category LIKE '$word'
OR Title LIKE '$word'
OR Title2 LIKE '$word'
OR Description LIKE '$word'
OR Description2 LIKE '$word'
OR Preimushestva LIKE '$word'
OR Preimspisok LIKE '$word';";
$result = mysqli_query($link, $query)
or die("Error: ".mysqli_error($link));
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
var_dump($row);
和$word = 'dolor'
我在表格中有单词dolor,在说明选项卡中帮我找错了
答案 0 :(得分:5)
你错过了你的模式匹配字符。没有它们LIKE
与=
基本相同。
以下是一个例子:
$query = "SELECT * FROM maintable WHERE Category LIKE '%$word%'
OR Title LIKE '%$word%'
OR Title2 LIKE '%$word%'
OR Description LIKE '%$word%'
OR Description2 LIKE '%$word%'
OR Preimushestva LIKE '%$word%'
OR Preimspisok LIKE '%$word%';";
答案 1 :(得分:4)
请看这个链接:http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html#operator_like
$query = "SELECT * FROM maintable
WHERE Category LIKE '%".$word."%'
OR Title LIKE '%".$word."%'
OR Title2 LIKE '%".$word."%'
OR Description LIKE '%".$word."%'
OR Description2 LIKE '%".$word."%'
OR Preimushestva LIKE '%".$word."%'
OR Preimspisok LIKE '%".$word."%';";
答案 2 :(得分:1)
我最好的猜测是你需要搜索'%dolor%'
。没有任何通配符的表达式like
会搜索完全匹配。
但是,如果在变量替换后打印出查询,则会有所帮助。如果通配符表单无法解决您的问题,您可以使用此信息编辑您的问题。