• 数据访问查询实例 租房子


    <body>
    	<h2>租赁信息</h2><br />
    	<div>
        <form action="zufang.php" method="post">
        <div>区       域:
        <input type="checkbox" onclick="CheckAll(this,'qy')" />全选</div>
    <?php
    	require_once "DBDB.class.php";
    	$db = new DBDB();
    	 
    	$sqlqy = "select distinct Area from house";
    	$attrqy = $db->Query($sqlqy);
    	//var_dump($attrqy);
    	 
    	foreach($attrqy as $v)
    	{
    		echo "<input class='qy' type='checkbox' value='{$v[0]}' name='qy[]'/>{$v[0]} ";     
    	}
    ?>
        
        <div><br />租赁类型:<input type="checkbox" onclick="CheckAll(this,'zl')"/>全选</div>
        <div>
    <?php
     
    	$sqlzl = "select distinct RentType from House";
    	$attrzl = $db->Query($sqlzl);
    	 
    	foreach($attrzl as $v)
    	{
    		echo "<input class='zl' type='checkbox' value='{$v[0]}' name='zl[]'/>{$v[0]} ";     
    	}
    ?>
        </div><br />
         
        <div>房屋类型:<input type="checkbox" onclick="CheckAll(this,'fw')"  />全选</div>
        <div>
    <?php
     
    	$sqlfw = "select distinct HouseType from House";
    	$attrfw = $db->Query($sqlfw);
    	//var_dump($attrqy);
    	 
    	foreach($attrfw as $v)
    	{
    		echo "<input class='fw' type='checkbox' value='{$v[0]}' name='fw[]'/>{$v[0]} ";     
    	}
    ?>
        </div><br />
         
        <div >关  键  字:
        <input type="text" name="keyword" id="key" />
        <br />
        <input type="submit" value="搜索" />
        </form>
     
        <br />
        <br />
        <br />
     
        <table  border="2" width="80%" style="text-align:center;" >
        <tr>
            <td>关键字</td>
            <td>区域</td>
            <td>面积</td>
            <td>租金</td>
            <td>租赁类型</td>
            <td>房屋类型</td>
        </tr>
     
    <?php
     
    	$tj = "";
    	$tj1 = " 1=1 ";//条件恒成立注意空格
    	$tj2 = " 1=1 ";
    	$tj3 = " 1=1 ";
    	$tj4 = " 1=1 ";
    	 
    	if(!empty($_POST["qy"]))
    	{
             // area in ('','','','') $attr = $_POST["qy"]; $str = implode("','",$attr);//拼接字符串 $tj1 = " Area in ('{$str}')"; } if(!empty($_POST["zl"])) { $attr = $_POST["zl"]; $str = implode("','",$attr); $tj2 = " RentType in ('{$str}')"; } if(!empty($_POST["fw"])) { $attr = $_POST["fw"]; $str = implode("','",$attr); $tj3 = " HouseType in ('{$str}')"; } if(!empty($_POST["keyword"])) { $attr = $_POST["keyword"]; $tj3 = " keyword like '%{$attr}%'"; } $tj = " Where {$tj1} and {$tj2} and {$tj3} and {$tj4}";//Where 前加空格 $sql = "select * from House".$tj;//拼接 $attrall = $db->Query($sql); //var_dump($attrall); foreach($attrall as $v) { echo "<tr> <td>{$v[1]}</td> <td>{$v[2]}</td> <td>{$v[3]}</td> <td>{$v[4]}</td> <td>{$v[5]}</td> <td>{$v[6]}</td> </tr>"; } ?> </table> </div> <script type="text/javascript"> function CheckAll(a,b)//this表示该 { var qx = a.checked; var ck = document.getElementsByClassName(b); for(var i =0;i<ck.length;i++) { ck[i].checked = qx; } } </script> </body>

     

    保持选中查询后条件还是在选中状态

    <body>
    	<h2>租赁信息</h2><br />
    	<div>
        <form action="zufang.php" method="post">
        <div>区       域:
        <input type="checkbox" onclick="CheckAll(this,'qy')" />全选</div>
    <?php
    	require_once "DBDB.class.php";
    	$db = new DBDB();
    	$tj = "";
    	$tj1 = "1=1";
    	$tj2 = "1=1";
    	$tj3 = "1=1";
    	$tj4 = "1=1";
    	$attr1 = array(); 
    	if(!empty($_POST["qy"]))
    	{
    		$attr1 = $_POST["qy"];
    		$str = implode("','",$attr1);
    		$tj1 = " Area in ('{$str}')";  
    	}
    	$attr2 = array(); 
    	if(!empty($_POST["zl"]))
    	{
    		$attr2 = $_POST["zl"];
    		$str = implode("','",$attr2);
    		$tj2 = " RentType in ('{$str}')";  
    	}
    	$attr3 = array(); 
    	if(!empty($_POST["fw"]))
    	{
    		$attr3 = $_POST["fw"];
    		$str = implode("','",$attr3);
    		$tj3 = " HouseType in ('{$str}')"; 
    	}
    	$attr4 = "";  
    	if(!empty($_POST["keyword"]))
    	{
    		$attr4 = $_POST["keyword"];
    		$tj3 = " keyword like '%{$attr4}%'";
    	}
    	 //把if语句拿到上面  拿到复选框的上面,把每个attr拿到花括号外面
    	$sqlqy = "select distinct Area from house";
    	$attrqy = $db->Query($sqlqy);
    	//var_dump($attrqy);
    	 
    	foreach($attrqy as $v)//加if语句
    	{
    		if(in_array($v[0],$attr1)){
    		//判断$v[0]	是否在数组attr1中  遍历出的$v[0]是否被选中
    		echo "<input class='qy' type='checkbox' checked='checked' value='{$v[0]}' name='qy[]'/>{$v[0]} ";
    		}else{
    			echo "<input class='qy' type='checkbox' value='{$v[0]}' name='qy[]'/>{$v[0]} ";  	
    		}   
    	}
    ?>
        
        <div><br />租赁类型:<input type="checkbox" onclick="CheckAll(this,'zl')"/>全选</div>
        <div>
    <?php
     
    	$sqlzl = "select distinct RentType from House";
    	$attrzl = $db->Query($sqlzl);
    	 
    	foreach($attrzl as $v)
    	{
    		if(in_array($v[0],$attr2)){
    			echo "<input class='zl' type='checkbox' checked='checked' value='{$v[0]}' name='zl[]'/>{$v[0]} ";	
    		}else{
    			echo "<input class='zl' type='checkbox' value='{$v[0]}' name='zl[]'/>{$v[0]} ";
    		} 
    	}
    ?>
        </div><br />
         
        <div>房屋类型:<input type="checkbox" onclick="CheckAll(this,'fw')"  />全选</div>
        <div>
    <?php
     
    	$sqlfw = "select distinct HouseType from House";
    	$attrfw = $db->Query($sqlfw);
    	//var_dump($attrqy);
    	 
    	foreach($attrfw as $v)
    	{
    		if(in_array($v[0],$attr3)){
    			echo "<input class='fw' type='checkbox' checked='checked' value='{$v[0]}' name='fw[]'/>{$v[0]}";  	
    		}else{
    			echo "<input class='fw' type='checkbox' value='{$v[0]}' name='fw[]'/>{$v[0]}";
    		}
    		   
    	}
    ?>
        </div><br />
         
        <div >关  键  字:
        <input type="text" name="keyword" id="key" value='<?php echo $attr4; ?>'/><!--加入一小段php代码-->
        <br />
        <input type="submit" value="搜索"/>
        </form>
     
        <br />
        <br />
        <br />
     
        <table  border="2" width="80%" style="text-align:center;" >
        <tr>
            <td>关键字</td>
            <td>区域</td>
            <td>面积</td>
            <td>租金</td>
            <td>租赁类型</td>
            <td>房屋类型</td>
        </tr>
     
    <?php
    	$tj = " Where {$tj1} and {$tj2} and {$tj3} and {$tj4}";//Where  前加空格
    	 
    	$sql = "select * from House".$tj;
    	$attrall = $db->Query($sql);
    	//var_dump($attrall);
    	 
    	foreach($attrall as $v)
    	{
    		echo "<tr>
    				<td>{$v[1]}</td>
    				<td>{$v[2]}</td>
    				<td>{$v[3]}</td>
    				<td>{$v[4]}</td>
    				<td>{$v[5]}</td>
    				<td>{$v[6]}</td>
    			</tr>";  
    	}
    	 
    	?>
    	 
    	</table>
        </div>
    
    <script type="text/javascript">
    	function CheckAll(a,b)//this表示该
    	{
    		var qx = a.checked;
    		var ck = document.getElementsByClassName(b);
    		for(var i =0;i<ck.length;i++)
    		{
    			ck[i].checked = qx;
    		}
    	}
    	 
    </script>
    </body>
    

     

    查询完成条件还是选中状态  和第一个不一样 第一个查询后条件就变为空

  • 相关阅读:
    DFT
    BSDL
    穆尼里奥:未派上最好点球手;齐达内成功并不意外
    module使用和设置
    APU (美国AMD公司研发的加速处理器)
    Lucio: We avoided Mourinho after every loss
    高位压迫——萨基给世界足坛带来的技术革命
    穆里尼奥:曼联没有在今夏尝试过签下C罗
    Linux 的 Out-of-Memory (OOM) Killer
    shell source命令说明
  • 原文地址:https://www.cnblogs.com/navyouth/p/8323611.html
Copyright © 2020-2023  润新知