php 数据库练习之租房子
题目:

示例图


本次只做图4这个表,因为之前的都已做过
自己在mydb数据库建了一个house表
如图:


自己做的代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<form action="house_main.php" method="post">
<div>
区域:
<input type="checkbox" name="qx1" onclick="checkall(this)" />全选
</div>
<div>
<?php
$db = new MySQLi("localhost","root","root","mydb");
$sqlqx = "select distinct area from house ";
$resultqx = $db->query($sqlqx);
while($arrqx = $resultqx->fetch_row())
{
echo"<input class='qx' type='checkbox' value='{$arrqx[0]}' name='qx[]' />{$arrqx[0]}";
}
?>
</div>
<div>
租赁类型:
<input type="checkbox" name="qx2" onclick="checkall2(this)"/>全选
</div>
<div>
<?php
$sqlqy = "select distinct renttype from house ";
$resultqy = $db->query($sqlqy);
while($arrqy = $resultqy->fetch_row())
{
echo"<input class='qy' type='checkbox' value='{$arrqy[0]}' name='qy[]'/>{$arrqy[0]}";
}
?> </div> <div>
房屋类型:
<input type="checkbox" name="qx3" onclick="checkall3(this)"/>全选
</div>
<div>
<?php
$sqlqz = "select distinct housetype from house";
$resultqz = $db->query($sqlqz);
while($arrqz = $resultqz->fetch_row())
{
echo"<input class='qz' type='checkbox' value='{$arrqz[0]}' name='qz[]' />{$arrqz[0]}";
}
?>
</div> <div>
关键字:
<input type="text" name="keyword"/>
</form>
<br /> <input type="submit" value="搜索" />
</div> </div>
<br />
<br />
<br /> </form>
<table width="50%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>关键字</td>
<td>区域</td>
<td>建筑面积</td>
<td>租金</td>
<td>租赁类型</td>
<td>房屋类型</td>
</tr>
<?php
$tj = "";
$tj1 = "1=1";
$tj2 = "2=2";
$tj3 = "3=3";
$tj4 = "4=4";
if(!empty($_POST["qx"]) && count($_POST["qx"]>0))
{
$attr = $_POST["qx"];
$str = implode("','",$attr); $tj1 = "area in ('{$str}')";
}
if(!empty($_POST["qy"]) && count($_POST["qy"]>0))
{
$attr = $_POST["qy"];
$str = implode("','",$attr);
$tj2 = "renttype in ('{$str}')";
}
if(!empty($_POST["qz"]) && count($_POST["qz"]>0))
{
$attr = $_POST["qz"];
$str = implode("','",$attr); $tj3 = "housetype in ('{$str}')";
}
if(!empty($_POST["keyword"]) && count($_POST["keyword"]>0))
{
$attr = $_POST["keyword"];
$tj4 = "keyword like '%{$attr}%'";
}
//$tj = " where {$tj1} and {$tj2} and {$tj3} and {$tj4} ";
$sql = "select * from house where {$tj1} and {$tj2} and {$tj3} and {$tj4} ";
$attry = $db->query($sql);
while($arr = $attry->fetch_row())
{
echo"<tr>
<td>{$arr[1]}</td>
<td>{$arr[2]}</td>
<td>{$arr[3]}</td>
<td>{$arr[4]}</td>
<td>{$arr[5]}</td>
<td>{$arr[6]}</td>
</tr>";
}
?> </table>
</body>
</html>
<script type="text/javascript"> function checkall(qx)
{ //ck变量不能重复设置
var ck = document.getElementsByClassName("qx");
if(qx.checked)
{
for(var i=0;i<ck.length;i++)
{
ck[i].setAttribute("checked","checked");
}
}
else
{
for(var i=0;i<ck.length;i++)
{
ck[i].removeAttribute("checked");
}
}
}
function checkall2(qy)
{
var ck2 = document.getElementsByClassName("qy");
if(qy.checked)
{
for(var i=0;i<ck2.length;i++)
{
ck2[i].setAttribute("checked","checked");
}
}
else
{
for(var i=0;i<ck2.length;i++)
{
ck2[i].removeAttribute("checked");
}
}
}
function checkall3(qz)
{
var ck3 = document.getElementsByClassName("qz");
if(qz.checked)
{
for(var i=0;i<ck3.length;i++)
{
ck3[i].setAttribute("checked","checked");
}
}
else
{
for(var i=0;i<ck3.length;i++)
{
ck3[i].removeAttribute("checked");
}
}
}
</script>
展示效果:

查询范例:

搜索结果如下:

php 数据库练习之租房子的更多相关文章
- 11月6日上午PHP练习《租房子》解析
一.题目要求 二.题目做法 1.建立数据库 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 pu ...
- PHP-----练习-------租房子-----增删改查,多条件查询
练习-------租房子-----增删改查,多条件 一 .题目要求: 二 .做法: [1]建立数据库 [2]封装类文件------DBDA.class.php <?php class DBDA ...
- PHP实例练习--投票和租房子
一,调查问卷 效果图:
- php 租房子(练习题)
一.题目要求 1.功能描述 出租房屋数据管理及搜索页面 2.具体要求 (1) 创建数据库HouseDB,创建表House,要求如下: 二.题目做法 1.建立数据库 2.封装类文件 <?php ...
- php练习 租房子
题目要求 1.封装类 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 public $yonghuming=&q ...
- 最近要租房子,用Python看一下房源吧..
前言:最近我的朋友想要租房子,为了装个b,决定运用技术去帮助他. 这个网站是什么我也不知道 反正是一个房子交易网站 http://www.ljia.net/ 设置请求头 headers = {'Ac ...
- PHP 练习(租房子)
一.题目要求 二.题目做法 1.建立数据库 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 pu ...
- PHP 练习3:租房子
一.题目要求 二.题目做法 1.建立数据库 2.封装类文件 <?php class DBDA { public $fuwuqi="localhost"; //服务器地址 pu ...
- php封装+租房子练习题
第一个页面DBDA.class.php <?php class DBDA { public $host = "localhost"; public $uid = " ...
随机推荐
- QT 5.7.0 交叉编译记录
这一篇记录 Qt 5.x cross-compiler with eglfs , 平台是 TI-AM3354, 上一篇SGX的移植就是为了这一次的交叉编译. 一. 下载QT的源码: 地址: http: ...
- 求链表倒数第k个节点
程序员面试题6-查找链表中倒数第k个结点 (-- ::)转载▼ 标签: 杂谈 分类: 程序设计 题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下 ...
- git关联远程仓库命令<原>
一.存在远程仓库了,本地想克隆其代码: $ git clone git@git.oschina.net:winkey4986/Weather_demo.git 二.本地有代码了,想在建个远程仓库保存代 ...
- Andriod——数据存储 SharedPrefrences
xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android= ...
- Storm学习笔记——高级篇
1. Storm程序的并发机制 1.1 概念 Workers (JVMs): 在一个物理节点上可以运行一个或多个独立的JVM 进程.一个Topology可以包含一个或多个worker(并行的跑在不同的 ...
- 分享一下自己写的Python 3的各种PDF文档【花了半年时间那】
这些文档花了我半年的时间去整理.因为是第一次进行整理,希望帮助后来者少走弯路.毕竟是第一次整理.哪些地方不到位,希望大家和我练习,我们一起把它做好,以下就直接给出下载地址了,都是免积分的下载奥.因此. ...
- 11.0592M晶振与12M晶振
标准的51单片机晶振是1.2M-12M,一般由于一个机器周期是12个时钟周期,所以先12M时,一个机器周期是1US,好计算,而且速度相对是最高的(当然现在也有更高频率的单片机). 11.0592M是因 ...
- jQuery.Form插件介绍
一.前言 jQuery From插件是一个优秀的Ajax表单插件,使用它可以让你非常容易地.无侵入地升级HTML表单以支持Ajax.jQuery From有两个主要方法:ajaxForm和ajaxS ...
- 《FPGA全程进阶---实战演练》第二章之硬件平台的搭建
学习FPGA,多多少少应该要懂得硬件电路的设计,这样不单单增加了自己的技能,而且还能够对FPGA的硬件实现有更好的了解. 1 模块划分 对于一个基本的FPGA硬件平台,常用的几个电路部分:(1)电源电 ...
- 【F12】网络面板
使用网络面板了解请求和下载的资源文件并优化网页加载性能 (1)网络面板基础 测量资源加载时间 使用 Network 面板测量您的网站网络性能. Network 面板记录页面上每个网络操作的相关信息,包 ...