<html>
<head>
<title></title>
<meta charset="UTF-8"/>

<link rel="stylesheet" type="text/css" href="bootstrap.min.css"/>
<script src="bootstrap.min.js"></script>
<script src="jquery-1.11.2.min.js"></script>
</head>

<form action="zufangzi.php" method="get">
<body>
<?php

$db = new MySQLi("localhost","root","","php_zuoye");
if(mysqli_connect_error()){
echo "连接失败!";
exit;
}

//输入关键字搜索查询条件及语句
$name = "";
$sq = " 1=1 ";
if(!empty($_GET["chaxun"])){
$name = $_GET["chaxun"];
$sq = " KeyWord like '%{$name}%' or
housetype like '%{$name}%' ";
}

// 区域查询条件及语句
$sq2 = " 1=1 ";
@$name2 = $_GET['xuanxiang'];
// var_dump($name2);
if(!empty($name2)){
@$sq2 = " area in ('{$name2[0]}','{$name2[1]}',
'{$name2[2]}','{$name2[3]}','{$name2[4]}') ";
}

//租赁类型查询条件及语句
$sq3 = " 1=1 ";
@$name3 = $_GET['zulx'];
// var_dump($name3);
if(!empty($name3)){
@$sq3 = " renttype in ('{$name3[0]}','{$name3[1]}',
'{$name3[2]}') ";
}

//房屋类型查询及语句
$sq4 = " 1=1 ";
@$name4 = $_GET['fanglx'];
// var_dump($name4);
if(!empty($name4)){
@$sq4 = " housetype in ('{$name4[0]}','{$name4[1]}',
'{$name4[2]}','{$name4[3]}','{$name4[4]}','{$name4[5]}') ";
}
?>

//页面框架
<div class="panel panel-primary">
<div class="panel-heading"><!--标题-->
<h3 class="panel-title">老刘租房</h3>
</div>
<div class="panel-body">
<div id="" style="float: left;
margin-left: 40px;"><!--顶部第1部分开始-->
<div><!--区域-->
<span id="">
区&nbsp;&nbsp;&nbsp;域:
</span>
<label class="checkbox-inline">
<input type="checkbox" id="quyu"
onclick="quanxuan(quyu,quyu1)">
全选
</label>
</div>
<div>
<label class="checkbox-inline">
<input type="checkbox" class="quyu1"
name="xuanxiang[0]" value="潘庄">
潘庄
</label>
<label class="checkbox-inline">
<input type="checkbox" class="quyu1"
name="xuanxiang[1]" value="理工大学">
理工大学
</label>
<label class="checkbox-inline">
<input type="checkbox" class="quyu1"
name="xuanxiang[2]" value="区政府">
区政府
</label>
<label class="checkbox-inline">
<input type="checkbox" class="quyu1"
name="xuanxiang[3]" value="钻石商务大厦">
钻石商务大厦
</label><label class="checkbox-inline">
<input type="checkbox" class="quyu1"
name="xuanxiang[4]" value="火车站">
火车站
</label>
</div><br />
</div><!--顶部第1部分结束-->

<div id="" style="float: left;
margin-left: 40px;"><!--顶部第2部分开始-->
<div id="">
<span id="">
租赁类型:
</span>
<label class="checkbox-inline">
<input type="checkbox" id="zulx"
onclick="quanxuan(zulx,zulx1)">
全选
</label>
</div>
<div>
<label class="checkbox-inline">
<input type="checkbox" class="zulx1"
name="zulx[0]" value="床位">
床位
</label>
<label class="checkbox-inline">
<input type="checkbox" class="zulx1"
name="zulx[1]" value="合租">
合租
</label>
<label class="checkbox-inline">
<input type="checkbox" class="zulx1"
name="zulx[2]" value="整租">
整租
</label>
</div><br />
</div><!--顶部第2部分结束-->

<div id="" style="float: left;
margin-left: 40px;"><!--顶部第3部分开始-->
<div id="">
<span id="">
房屋类型:
</span>
<label class="checkbox-inline">
<input type="checkbox" id="fanglx"
onclick="quanxuan(fanglx,fanglx1)">
全选
</label>
</div>
<div>
<label class="checkbox-inline">
<input type="checkbox" class="fanglx1"
name="fanglx[0]" value="1室1厅">
1室1厅
</label>
<label class="checkbox-inline">
<input type="checkbox" class="fanglx1"
name="fanglx[1]" value="2室1厅">
2室1厅
</label>
<label class="checkbox-inline">
<input type="checkbox" class="fanglx1"
name="fanglx[2]" value="3室2厅">
3室2厅
</label>
<label class="checkbox-inline">
<input type="checkbox" class="fanglx1"
name="fanglx[3]" value="4室2厅">
4室2厅
</label>
<label class="checkbox-inline">
<input type="checkbox" class="fanglx1"
name="fanglx[4]" value="平房">
平房
</label>
<label class="checkbox-inline">
<input type="checkbox" class="fanglx1"
name="fanglx[5]" value="筒子楼">
筒子楼
</label>
</div><br />
</div><!--顶部第3部分结束-->

<div id="" style="position: absolute; right: 30px;"><!--顶部第4部分开始-->
<input type="text" class="form-control" id="name"
placeholder="输入关键字查询" style="max-width: 160px;"
name="chaxun" value="<?php echo $name ?>"
onclick="">
<button type="submit" class="btn btn-primary
btn-sm">查 询</button>
</div><!--顶部第4部分结束-->
</div><!--面板内容结尾-->
</div><!--面板结尾-->


<table class="table table-striped"><!--输出数据库数据为表格-->
<thead>
<tr>
<th>关键字</th>
<th>区域</th>
<th>使用面积</th>
<th>租金</th>
<th>租住类型</th>
<th>房屋类型</th>
</tr>
</thead>
<tbody>
<?php
require_once "./page.class.php";//分页显示的php代码
$sqt = "select count(*) from house where {$sq} and {$sq2}
and {$sq3} and {$sq4}";
$sqa = $db->query($sqt);
$sqa = $sqa->fetch_all();
$page = new Page($sqa[0][0],10);

$sql = "select * from House where {$sq} and {$sq2}  //查询sql语句的汇总
and {$sq3} and {$sq4}".$page->limit;
$result = $db->query($sql);
$arr = $result->fetch_all();

foreach($arr as $v){                                                //改变关键字样式
$x = str_replace($name,"<span style='color:red;
'><b>{$name}</b></span>",$v[1]);
$y = str_replace($name,"<span style='color:red;
'><b>{$name}</b></span>",$v[6]);

echo "<tr>                                                             //输出数据库数据为表格
<td>{$x}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
<td>{$v[5]}</td>
<td>{$y}</td>
</tr>";
}
?>

</tbody>
</table>
<div style="margin-left: 350px; font-weight: bold;">  //分页显示底部栏
<?php
echo $page->fpage();
?>
</div>


</body>
</form>
</html>
<script type="text/javascript">
var quyu = document.getElementById("quyu");
var quyu1 = document.getElementsByClassName("quyu1");
var zulx = document.getElementById("zulx");
var zulx1 = document.getElementsByClassName("zulx1");
var fanglx = document.getElementById("fanglx");
var fanglx1 = document.getElementsByClassName("fanglx1");

function quanxuan(a,b){                                                     //控制全选
for(var i=0;i<=quyu1.length;i++){
b[i].checked = a.checked;
}
}
</script>

php 数据访问练习:租房查询页面的更多相关文章

  1. MVC5 + EF6 + Bootstrap3 (10) 数据查询页面

    文章来源:Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-search-page.html 系列教程:MVC ...

  2. 用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。

    最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变 ...

  3. 9_13学习完整修改和查询&&实体类,数据访问类

    完整修改和查询:中间变量运用. 1.先查 2.执行操作 ---------------------------------------------------- namespace ADO.NET_小 ...

  4. ADO.NET(完整修改和查询、实体类,数据访问类)

    一.完整修改和查询 在编写c#语句时需考虑到用户体验,例如在编写修改语句时,需要考虑到输入的内容在数据库中是否能够找到. 中间变量运用. 1.先查 2.执行操作 完整修改语句: bool has = ...

  5. ADO.NET 数据访问类查询、属性扩展

    今天,我首先在之前所做的人员管理系统的基础上,利用数据访问类进行了所有人员信息的查询. 主程序代码: List<Users> Ulist = new UsersData().Select( ...

  6. 在MyBatis中查询数据、涉及多参数的数据访问操作、插入数据时获取数据自增长的id、关联表查询操作、动态SQL、关于配置MyBatis映射没有代码提示的解决方案

    1. 单元测试 在单元测试中,每个测试方法都需要执行相同的前置代码和后置代码,则可以自定义2个方法,分别在这2个方法中执行前置代码和后置代码,并为这2个方法添加@Before和@After注解,然后, ...

  7. ASP.Net MVC开发基础学习笔记(7):数据查询页面

     前言 前面铺垫了那么多,今天我们就用MVC5 + EF6 + Bootstrap3来正式创建一个基本查询页面. 为什么从查询页面開始?嘿嘿.由于小弟的.Net生涯就是从查询页面開始的,记得正式工 ...

  8. Django——8 关系表的数据操作 表关联对象的访问 多表查询

    Django 关系表中的数据操作 表关联对象的访问 关联对象的add方法 create方法 remove方法 clear方法 多表查询 查询补充 聚合查询 分组查询 F查询 Q查询 关系表的数据操作 ...

  9. php 之 数据访问 查询关键字 (0506)

    根据数据库中的car表做一个汽车查询页面:  一.一个关键字查询: 主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti ...

随机推荐

  1. 简单设置android启动画面

    1.新建Activity,以及layout文件夹里的xml文件2.将新建Activity在AndroidManifest中设为默认Activity,并且添加:android:theme="@ ...

  2. Java 三目运算符表达式的一些问题

    最近在处理一个需求,需求描述如下:对数据库中查询出来的数据的某一个字段做一个简单处理.处理方式是:如果该字段的值(取值范围0~4,有可能为null)等于0,那么默认处理成1. 测试代码如下: publ ...

  3. Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案

    注意:此参考解决方案只是针对xlsx格式的excel文件! 背景 前一段时间遇到一种情况,服务器经常宕机,而且没有规律性,查看GC日志发生了out of memory,是堆溢出导致的,分析了一下堆的d ...

  4. 移动端APP页面Webview模式跳转详解

    首先,来看一下关于Android home键和back键区别 back键 Android的程序无需刻意的去退出,当你一按下手机的back键的时候,系统会默认调用程序栈中最上层Activity的Dest ...

  5. js 重载(overload)

    1.js中不支持重载的语法.(因为js不允许多个同名函数存在) 解决:使用arguments类数组对象接收调用时所有传入的参数值. 2. arguments可以使用length属性,通过下标访问,不能 ...

  6. struts2上传文件类型列表

    '.a'      : 'application/octet-stream',         '.ai'     : 'application/postscript',         '.aif' ...

  7. akoj-1272-字母统计

    字母统计 Time Limit:1000MS  Memory Limit:65536K Total Submit:72 Accepted:48 Description 现在给你一个由小写字母组成字符串 ...

  8. git入门大全

    前言 以前写个一个git小结,但是实际上并不够用.于是结合实际工作上碰到的一些情况,参考了一些资料,重新总结了一下.目标是在日常工作中不用再去查阅其他的资料了,如果有什么遗漏或者错误的地方,请评论指出 ...

  9. Gitlab CI 自动部署 asp.net core web api 到Docker容器

    为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成. ...

  10. PyV8

    待完善 pyv8是个js解析引擎, PyV8 是 V8 引擎的 Python 语言封装,这是 Python 和 JavaScript 对象之间的桥,支持在 Python 脚本中调用 V8 引擎. # ...