我收到了这个错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 6 行的 'and idcat = 00 OR idcat = 11 OR idcat = 4 OR idcat = 8 OR idcat = 10 OR idcat ' 附近使用正确的语法
我试图在 PHP 上做这个查询
SELECT *,
MATCH (name,description) AGAINST ('key') AS relevancia
FROM offer
WHERE
MATCH (name,description)
and idcat = 00
OR idcat = 11
OR idcat = 4
OR idcat = 8
OR idcat = 10
OR idcat = 5
OR idcat = 7
OR idcat = 1
OR idcat = 2
OR idcat = 3
OR idcat = 6
OR idcat = 9
AGAINST ('key')
ORDER BY discount DESC
LIMIT 0, 15
但是,如果我尝试直接在 phpmyadmin 上执行此查询,它就可以正常工作。所以我不知道如果它是相同的咨询为什么不能在 PHP 上工作。
顺便原谅我糟糕的英语。
编辑:
这是php的consulation
$sql2 = "SELECT *,
MATCH (name,description)
AGAINST ('$search')
AS relevancia
FROM offer
WHERE MATCH (name,description) AGAINST ('$search')
and $wheres $order $limit";
echo $sql2;
mysql_query("".$sql2."") or die (mysql_error());
$sql2 上的 php 结果
SELECT *, MATCH (name,description) AGAINST ('key') AS relevancia
FROM offer
WHERE MATCH (name,description) AGAINST ('key')
and idcat IN(00, 11, 4, 8, 10, 5, 7, 1, 2, 3, 6, 9)
ORDER BY discount DESC LIMIT 0, 3
php-mysql中的错误
You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to
use near
'idcat IN(00, 11, 4, 8, 10, 5, 7, 1, 2, 3, 6, 9) ORDER BY discount DESC' at line 5