mysql_query()中的sql语句好像不能带括号。

WBOY
Release: 2016-06-23 14:13:14
Original
1604 people have browsed it

SQL

$rs= mysql_query("select * from cxjb2 where nam ".$_POST[select3]." $_POST[nam] and cat ".$_POST[select0]." $_POST[cat] and sha ".$_POST[select1]." $_POST[sha] and pri is NULL  or nam ".$_POST[select3]." $_POST[nam] and cat ".$_POST[select0]." $_POST[cat] and sha ".$_POST[select1]." $_POST[sha]");

以上语句可以执行。

 $rs= mysql_query("(select * from cxjb2 where nam ".$_POST[select3]." $_POST[nam] and cat ".$_POST[select0]." $_POST[cat] and sha ".$_POST[select1]." $_POST[sha]) and (pri is NULL  or pri is NOT NULL)");

同样的逻辑关系转换成此语句时便不能成功执行了。

请问各位大大指教





回复讨论(解决方案)

 $rs= mysql_query("(select * from cxjb2 where nam ".$_POST[select3]." $_POST[nam] and cat ".$_POST[select0]." $_POST[cat] and sha ".$_POST[select1]." $_POST[sha]) and (pri is NULL  or pri is NOT NULL)");
就是
 $rs= mysql_query("(...) and (...)");
你说这样对吗?

就是这样!

while($rst = mysql_fetch_row($rs)){
加了括号后此行程序报错

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in E:\apache\htdocs\chashi2.php on line 329

就是这样!???
语法都不对了,还不报错吗?

恕我眼拙
我知道语法肯定错了
只是不知道哪里错了

所有的sql指令都必须以 SQL 命令字开头

我悟了 谢谢大大的指教

 $rs= mysql_query("select * from cxjb2 where (nam ".$_POST[select3]." $_POST[nam] and cat ".$_POST[select0]." $_POST[cat] and sha ".$_POST[select1]." $_POST[sha]) and (pri is NULL  or pri is NOT NULL)");
我把括号位置改变后成功了。

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template