多条件查询(php+mysql) 租房子例子
<body>
<?php //多条件
$tiaojian2= " 2=2 ";
$attr2 = "";
//判断区域
if(!empty($_POST["area"]))
{
$attr2 = $_POST["area"];
$str2 = implode("','",$attr2);
$tiaojian2 = "area in('{$str2}')";
}
//多条件
$tiaojian3= " 2=2 ";
$attr3 = "";
//判断房屋类型
if(!empty($_POST["renttype"]))
{
$attr3 = $_POST["renttype"];
$str3 = implode("','",$attr3);
$tiaojian3 = "renttype in('{$str3}')";
}
//多条件
$tiaojian4= " 2=2 ";
$attr4 = "";
//判断租赁类型
if(!empty($_POST["houesetype"]))
{
$attr4 = $_POST["houesetype"];
$str4 = implode("','",$attr4);
$tiaojian4 = "houesetype in('{$str4}')";
} ?>
<form action="sousuoyemian.php" method="post"> <div>区 域:<input type="checkbox" onclick="quanxuanqu(this)"/>全选
<?php
$tj=" and 1=1 ";
if(!empty($_POST["gjz"]) && $_POST["gjz"]!== "" )
{ $tj=" and kerword like '%{$_POST['gjz']}%' ";
}
include("fengzhuang.php"); $db = new FENG();
$s="select * from house";
$a=$db->query($s);
echo"<div>";
foreach($a as $v)
{
echo"<input type='checkbox' class='quyu' value='$v[2]' name='area[]'/>{$v[2]}";
}
echo"</div>";
?>
</div><br /> <div>房屋类型:<input type="checkbox" onclick="quanxuanfang(this)"/>全选
<?php echo"<div>";
foreach($a as $v)
{
echo"<input type='checkbox' class='fangwu' value='$v[5]' name='renttype[]'/>{$v[5]}";
}
echo"</div>";
?>
</div><br /> <div>租赁类型:<input type="checkbox" onclick="quanxuanzu(this)"/>全选
<?php
echo"<div>";
foreach($a as $v)
{
echo"<input type='checkbox' class='zulin' value='$v[6]' name='houesetype[]'/>{$v[6]}";
}
echo"</div>";
?>
</div><br /> <!-- 关键字查询 -->
<div>关 键 字:<input type="text" name="gjz"/></div>
<div><input type="submit" value="搜索" /></div>
</form> <table style="width:100%" border="1" cellpadding="0" cellspacing="0">
<tr> <td>关键字</td>
<td>区域</td>
<td>使用面积</td>
<td>租金</td>
<td>租赁类型</td>
<td>房屋类型</td>
</tr> <?php $sql="select * from house where {$tiaojian2} and {$tiaojian3} and {$tiaojian4} ".$tj; $ar=$db->query($sql); foreach($ar as $v)
{
echo"<tr>";
echo"<td>{$v[1]}</td><td>{$v[2]}</td><td>{$v[3]}</td><td>{$v[4]}</td><td>{$v[5]}</td><td>{$v[6]}</td>";
echo"</tr>";
} ?> </table> <script type="text/javascript"> function quanxuanqu(qu)
{
//找到下面所有的复选框
var c=document.getElementsByClassName("quyu");
//遍历所有复选框,设置选中状态
for (var i=0; i<c.length; i++)
{
if(qu.checked)
{
c[i].setAttribute("checked","checked");
}
else
{
c[i].removeAttribute("checked");
} } } function quanxuanfang(fang)
{
//找到下面所有的复选框
var c=document.getElementsByClassName("fangwu");
//遍历所有复选框,设置选中状态
for (var i=0; i<c.length; i++)
{
if(fang.checked)
{
c[i].setAttribute("checked","checked");
}
else
{
c[i].removeAttribute("checked");
} } } function quanxuanzu(zu)
{
//找到下面所有的复选框
var c=document.getElementsByClassName("zulin");
//遍历所有复选框,设置选中状态
for (var i=0; i<c.length; i++)
{
if(zu.checked)
{
c[i].setAttribute("checked","checked");
}
else
{
c[i].removeAttribute("checked");
} } }
</script> </body>
多条件查询(php+mysql) 租房子例子的更多相关文章
- pymongo增删查改以及条件查询
---恢复内容开始--- 下载Pymongo pip install pymongo pip install pymongo==x.x.x指定下载版本 连接数据库 from pymongo impor ...
- PHP-----练习-------租房子-----增删改查,多条件查询
练习-------租房子-----增删改查,多条件 一 .题目要求: 二 .做法: [1]建立数据库 [2]封装类文件------DBDA.class.php <?php class DBDA ...
- mysql: 两个字段合并,字符时间转时间戳,别名字段作为where条件查询
有字段,a,b: a存的是:2016-10-10 b存的是:10:15:30 mysql将字段合并: concat(a, ' - ', b) 或者 concat(a, ' ', b) 字符时间转时间 ...
- Mysql动态多条件查询
动态多条件查询是一类经常遇到的问题. 在Mysql里面可以用语句简单的解决. SELECT * FROM product WHERE price = IF('{0}' = '', price, '{0 ...
- mysql常用基础操作语法(五)--对数据的简单条件查询【命令行模式】
1.单条件查询:select 字段名 from tablename where 条件: 2.简单多条件查询,使用&&或者between and等: 3.is null和is not n ...
- mysql进阶(五)数据表中带OR的多条件查询
MySQL数据表中带OR的多条件查询 OR关键字可以联合多个条件进行查询.使用OR关键字时: 条件 1) 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来. 2) 如果不符合这些查询条件 ...
- Mysql 中Left/Right join on后面and和where条件查询的差异-Mysql SQL运算符是有优先级
一.Mysql中Left/Right join on后面and和where条件查询的差异 1.建两张测试表,一张商户定义表.一张商户操作状态明细表 1)商户定义表 CREATE TABLE hope. ...
- mysql条件查询and or使用实例及优先级介绍
mysql and与or介绍 AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来. 使用OR关键字时: 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来. 如果不符合这 ...
- MySQL(四)DQL语言——条件查询
摘要:条件查询:条件表达式,逻辑表达式,模糊查询,like,通配符,转义字符,escape关键字,between and,in,is null,is not null,安全等于. 条件查询语法: SE ...
随机推荐
- C#: XML Serializer
这里主要讲如何将一个class序列化为一个string.如下一个class: public class OrderedItem { private string itemName; private s ...
- 变形--位移 translate()
translate()函数可以将元素向指定的方向移动,类似于position中的relative.或以简单的理解为,使用translate()函数,可以把元素从原来的位置移动,而不影响在X.Y轴上的任 ...
- bzoj3192 [JLOI2013]删除物品
用数组表示两个栈,将两个栈的栈顶并在一起,用树状数组维护一下操作即可. 代码 #include<cstdio> #include<algorithm> #include< ...
- BETWEEN and
select * from ( select *,ROW_NUMBER() over (ORDER BY AddTime desc) RowNumber from Product where ID n ...
- [php]表单和验证
<?php /* 表单的作用: 通过表单 发布和收集 信息. 对html表单进行编码 只是有效接受用户输入的必要操作的(一部分), 必须由[服务器端]组件来处理 一 标头函数(header()) ...
- javascript 深拷贝
javascript存在两种拷贝:浅拷贝.深拷贝. 它们最大的区别在于引用类型的拷贝上:浅拷贝复制的是引用(指针),深拷贝复制的是里面的数据. 由于以上原因,在下例中 浅拷贝修改的值影响了声明的对象a ...
- c# 操作xml题目
download! 1.新建一个文本文件,命名为:projects.txt. 2.将后缀名改为projects.xml. 3.用记事本编辑该文件.使用utf-8编码.内容如下: <?xml v ...
- Sed文本替换一例
使用 Sed 完成文本替换操作任务是非常合适的. 现在, 假设我要将一个原有 Java 项目中的一些包及下面的类移到另一个项目中复用. Project javastudy: Packages: alg ...
- UnicodeDecodeError: ‘ascii’ codec can’t decode...: ordinal not in range(128 问题解决
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128 原 ...
- makefile 中 $@ $^ %< 使用【转】
转自:http://blog.csdn.net/kesaihao862/article/details/7332528 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 ...