我的 php 遇到问题,我不明白为什么它不起作用。
我试图只显示某一列等于 0 的行。
我现在拥有的:
$raw_results = mysql_query("SELECT * FROM elebest
WHERE
( ( `BSTLIEFBST` LIKE '%".$query."%' )
OR
( `BSTKATNR` LIKE '%".$query."%' )
OR
( `BSTLIEFTXT` LIKE '%".$query."%' ) " ) or die(mysql_error());
我尝试了多种方法,最后一次尝试的是:
$raw_results = mysql_query("SELECT * FROM elebest
WHERE
( ( `BSTLIEFBST` LIKE '%".$query."%' )
OR
( `BSTKATNR` LIKE '%".$query."%' )
OR
( `BSTLIEFTXT` LIKE '%".$query."%' ) AND ( `BSTANF` = 0 ) ") or die(mysql_error());
第一个代码工作正常..我只是不明白为什么它说:
"You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near " at line 7"
我读过一些关于此的教程,但大多数都只显示 $function
。我的 php.ini 中没有我的列作为函数。我将它们设置为:
.$results['BSTKATNR'].
最佳答案
括号放错位置了。这是您的查询,其语法已更正。
$sql = "SELECT *
FROM elebest
WHERE
(
`BSTLIEFBST` LIKE '%".$query."%'
OR
`BSTKATNR` LIKE '%".$query."%'
OR
`BSTLIEFTXT` LIKE '%".$query."%'
)
AND `BSTANF` = 0";
关于PHP/SQL 等于某列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41543388/