1、小知识
此错误代表 sql语句出错
处理页面可以是新建的或是本页面,如果是本页面:注意刷新后的页面显示。考虑如何实现它,可以加个if语句限制。
2、条件查询的一般步骤:
//分条件
$tj1=" 1=1"; $tj2=" 1=1";//查所有的内容
//条件内容
if(!empty($_POST["zhi"]))//判断有没有进行获取操作,如果没有执行获取操作,那么页面一跳转就显示所有记录,如果有执行下面语句 { $zhi=$_POST["zhi"]; $brand=$_POST["brand"]; if($zhi!="") { //模糊查询-关键字查询 $tj1=" Name like '%{$zhi}%'"; } if($brand!="") { $tj2=" brand='$brand'"; } }
//总条件
$tj=" where".$tj1." and".$tj2;
案例:
封装类页面:
<?php header("content-type:text/html;charset=utf-8"); class DBDA { public $host="localhost"; public $uid="root"; public $pwd="123"; public $dbconnect; function query($sql,$type=1,$dbname="test") { $this->dbconnect=new MySQLi($this->host,$this->uid,$this->pwd,$dbname); if(!mysqli_connect_error()) { $result=$this->dbconnect->query($sql); if($type==1) { $attr=$result->fetch_all(); return $attr; } else { return $result; } } else { echo "连接失败"; } } }
主页面:
<body> <h1 align="center">查询页面</h1> <form action="chaxun.php" method="post"> 汽车名称:<input type="text" name="zhi"/> <br /> 系列号: <input type="text" name="brand"/> <input type="submit" value="查询"/> </form> <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#000000"> <tr> <th bgcolor="#FFFFFF">序号</th> <th bgcolor="#FFFFFF">名称</th> <th bgcolor="#FFFFFF">系列</th> <th bgcolor="#FFFFFF">日期</th> <th bgcolor="#FFFFFF">油耗</th> <th bgcolor="#FFFFFF">码力</th> <th bgcolor="#FFFFFF">行程</th> <th bgcolor="#FFFFFF">价格</th> <th bgcolor="#FFFFFF">pic</th> </tr> <br /> <?php //处理页面是本页面,页面一跳转过来就显示主页面 //$zhi=$_POST["zhi"]; $tj1=" 1=1"; $tj2=" 1=1";//查所有的内容 if(!empty($_POST))//判断有没有进行获取操作,如果没有执行获取操作,那么页面一跳转就显示所有记录,如果有执行下面语句 { $zhi=$_POST["zhi"]; $brand=$_POST["brand"]; if($zhi!="") { //模糊查询-关键字查询 $tj1=" Name like '%{$zhi}%'"; } if($brand!="") { $tj2=" brand='$brand'"; } } $tj=" where".$tj1." and".$tj2; //查询如果不输入条件,默认显示主页面 include "DBDA.class.php"; $car=new DBDA(); $sql="select * from car".$tj;//全局变量对应于全局变量 var_dump($sql); $a=$car->query($sql,1); foreach($a as $v) { echo "<tr> <td bgcolor='#FFFFFF' align='center'>{$v[0]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[1]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[2]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[3]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[4]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[5]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[6]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[7]}</td> <td bgcolor='#FFFFFF' align='center'>{$v[8]}</td> </tr>"; } ?> </table> </body>
No Excuse~