php 数据访问练习:租房查询页面
<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="">
区 域:
</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 数据访问练习:租房查询页面的更多相关文章
- MVC5 + EF6 + Bootstrap3 (10) 数据查询页面
文章来源:Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-search-page.html 系列教程:MVC ...
- 用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。
最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变 ...
- 9_13学习完整修改和查询&&实体类,数据访问类
完整修改和查询:中间变量运用. 1.先查 2.执行操作 ---------------------------------------------------- namespace ADO.NET_小 ...
- ADO.NET(完整修改和查询、实体类,数据访问类)
一.完整修改和查询 在编写c#语句时需考虑到用户体验,例如在编写修改语句时,需要考虑到输入的内容在数据库中是否能够找到. 中间变量运用. 1.先查 2.执行操作 完整修改语句: bool has = ...
- ADO.NET 数据访问类查询、属性扩展
今天,我首先在之前所做的人员管理系统的基础上,利用数据访问类进行了所有人员信息的查询. 主程序代码: List<Users> Ulist = new UsersData().Select( ...
- 在MyBatis中查询数据、涉及多参数的数据访问操作、插入数据时获取数据自增长的id、关联表查询操作、动态SQL、关于配置MyBatis映射没有代码提示的解决方案
1. 单元测试 在单元测试中,每个测试方法都需要执行相同的前置代码和后置代码,则可以自定义2个方法,分别在这2个方法中执行前置代码和后置代码,并为这2个方法添加@Before和@After注解,然后, ...
- ASP.Net MVC开发基础学习笔记(7):数据查询页面
前言 前面铺垫了那么多,今天我们就用MVC5 + EF6 + Bootstrap3来正式创建一个基本查询页面. 为什么从查询页面開始?嘿嘿.由于小弟的.Net生涯就是从查询页面開始的,记得正式工 ...
- Django——8 关系表的数据操作 表关联对象的访问 多表查询
Django 关系表中的数据操作 表关联对象的访问 关联对象的add方法 create方法 remove方法 clear方法 多表查询 查询补充 聚合查询 分组查询 F查询 Q查询 关系表的数据操作 ...
- php 之 数据访问 查询关键字 (0506)
根据数据库中的car表做一个汽车查询页面: 一.一个关键字查询: 主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti ...
随机推荐
- HDOJ2012-素数判定
Problem Description 对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数. I ...
- 小程序server-3-搭建WebSocket 服务
小程序server-3-搭建WebSocket 服务: 1.安装 Node 模块 使用 ws 模块来在服务器上支持 WebSocket 协议,下面使用 NPM 来安装: cd /var/www/wxp ...
- C++写#pragma warning(disable 4786)的作用
C++编程时,在使用STL(C++标准模板库)的时候经常引发类似的错误,尤其是vector,map这类模板类,模板中套模板,一不小心就很长了. 当命名超过C++规定范围255字符时,就会产生这个名为d ...
- [补档]暑假集训D2总结
%dalao https://hzoi-mafia.github.io/2017/07/26/17/ (纪念我已死去的github) 大佬AntiLeaf来讲概率&期望,然后--成功变为 不可 ...
- 【mock.js】后端不来过夜半,闲敲mock落灯花 ——南宋·赵师秀
mock的由来[假] 赵师秀:南宋时期的一位前端工程师 诗词背景:在一个梅雨纷纷的夜晚,正值产品上线的紧张时期,书童却带来消息:写后端的李秀才在几个时辰前就赶往临安度假去了, 赵师秀非常生气 ...
- 带你快速进入.net core的世界
[申明]:本人.NET Core小白.Linux小白.MySql小白.nginx小白.而今天要说是让你精通Linux ... 的开机与关机.nginx安装与部署.Core的Hello World .. ...
- Hibernate批量操作(二)
Hibernate提供了一系列的查询接口,这些接口在实现上又有所不同.这里对Hibernate中的查询接口进行一个小结. 我们首先来看一下session加载实体对象的过程:Session在调用数据库查 ...
- java常见排序方法
1.java常用排序方法 1) 选择排序 原理:a. 将数组中的每个元素,与第一个元素比较 如果这个元素小于第一个元素, 就将这个 两个元素交换. ...
- 微信小程序添加、删除class’
终于等到公司开发小程序了,学习的时候不觉得有什么,实际开发就会出现各种问题. 今天第一天开发就遇到问题了. 项目需求,要一个平时的nav导航栏,这玩意用jQuery两行代码解决了,可是小程序不允许操作 ...
- Java String字符串深入详解
Java中字符串对象创建有两种形式,一种为字面量形式,如String str = "hello";,另一种就是使用new这种标准的构造对象的方法,如String str = new ...