做一个简单的搜索

时间:2012-04-30 00:16:40

标签: php mysql

我正在做一个简单的搜索,以下查询是否正确?

mysql_query("SELECT * FROM products WHERE name LIKE'$searchquery' AND description LIKE'$searchquery'");

编辑:

LIKE '$searchquery;这部分需要一个空格,事实证明这是一个语法问题。第二种方式我很感兴趣。正如@ yes123所建议的那样。

SELECT * FROM products WHERE MATCH(name,description) AGAINST ('$searchQuery')

我这样做,我得到了:

Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in /home/search.php on line 62

3 个答案:

答案 0 :(得分:2)

要搜索purpouse,您应该使用FULL TEXT索引。此时,您的查询将变为:

[...] WHERE MATCH(col1,col2) AGAINST ('your search') [...]

请使用PDO

答案 1 :(得分:1)

是的,语法是正确的,只有问题似乎是在LIKE之后有空格,因此尝试 SELECT * FROM products WHERE NAME LIKE '$searchquery' AND description LIKE '$searchquery';

答案 2 :(得分:1)

这是正确的,但是,您需要在两个地方的LIKE'$searchquery'之间加一个空格。