作者vivi50218 (vivi)
看板PHP
标题[请益] SQL语法查询的问题
时间Fri Sep 28 15:51:58 2012
我现在需要做一个查询系统 就是利用客户编号或名字或地区做条件查询
但是我现在遇到一个问题就是 不知为什麽查询出来都是空的...只有客户编号能查询
之前我分成3个的时候是可以查询的 但合在一起就失败了...
下面3个输入值都放在同一个表单内 这样值应该会送出吧?
$a=$_POST["select_city"]; //接受select的值 1,2,3
$b=$_POST["cust_no"]; //接受客户编号 int
$c=$_POST["cust_na"]; //接受客户名称 中文字串
$link=ibase_pconnect( "localhost:D:/ANTHILL.GDB", "SYSDBA", "masterkey" )
or die("Error : Cannot connect to Firebird Server.\r\n");
if($a==1)
{
$query="SELECT * FROM CUSTOMER WHERE OCALL LIKE '%台南公司%' AND CUST_NO='$b'
AND CUST_NA LIKE '%$c%'";
}
if($a==2)
{
$query="SELECT * FROM CUSTOMER WHERE OCALL LIKE '%高雄公司%' AND CUST_NO='$b'
AND CUST_NA LIKE '%$c%'";
}
if($a==3)
{
$query="SELECT * FROM CUSTOMER WHERE OCALL LIKE '%嘉义所%' AND CUST_NO='$b'
AND CUST_NA LIKE '%$c%'";
}
else
{
$query="SELECT * FROM CUSTOMER WHERE CUST_NO='$b' AND CUST_NA LIKE '%$c%'";
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.20.201.205
1F:→ sktdeity:三个 if ? 09/28 16:00
→ vivi50218:是用来判断 select的值
请问 若是只有其中一个有值 其他两个都空的 这样还查的出来吗? 09/28 16:01
※ 编辑: vivi50218 来自: 211.20.201.205 (09/28 16:03)
2F:→ MOONRAKER:怎麽可能啊 09/28 16:17
3F:→ vivi50218:OK 我知道问题在哪了 要先判断是不是空的 . 09/28 16:30
4F:→ MOONRAKER:CUST_NO=''会选不到东东 CUST_NA LIKE '%%'则是选到全部 09/28 16:53
5F:→ MOONRAKER:SQL这样运气好不会错 有时空值造成SQL错误可以debug半天 09/28 16:54
6F:→ Bambe:用 OR 不就好了!?@@ (还是其实没那麽简单?? 09/29 01:00
已解决了 要先判断有无输入值 有才加入sql语法
※ 编辑: vivi50218 来自: 220.133.249.172 (09/30 13:39)