PHP-----练习-------租房子-----增删改查,多条件查询
练习-------租房子-----增删改查,多条件
一 、题目要求:



二 、做法:
【1】建立数据库



【2】封装类文件------DBDA.class.php
<?php
class DBDA
{
public $fuwuqi="localhost"; //服务器地址
public $yonghuming="root";//用户名
public $mima="";//密码 public $dbconnect;//连接对象 //操作数据库的方法 //$sql代表需要执行的SQL语句
//$type代表SQL语句的类型,1代表查询,2代表增删改
//$shujukuming代表数据库的名称
//如果是查询,返回二维数组
//如果是增删改,返回true或false function Query($sql,$type=,$shujukuming="house")
{
//造连接对象
$this->dbconnect = new MySQLi($this->fuwuqi,$this->yonghuming,$this->mima,$shujukuming); //判断是否出错
if(!mysqli_connect_error())
{
//如果连接成功,执行SQL语句
$result = $this->dbconnect->query($sql); //根据语句类型判断
if($type==)
{
//如果是查询语句,返回二维数组
return $result->fetch_all();
}
else
{
//如果是其他语句,返回true或false
return $result;
} }
else
{
return"连接失败"; } } } ?>
【3】租房子首页-----liebiaoyemian.php
<!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> <table width="1000px" cellpadding="" border="" ellspacing="">
<tr> <td>关键字</td>
<td>区域</td>
<td>使用面积</td>
<td>租金</td>
<td>租贷类型</td>
<td>房屋类型</td>
<td></td>
<td></td>
</tr> <?php include("DBDA.class.php"); $dx=new DBDA(); $sql="select * from house";
$r = $dx->Query($sql,);
//$attr=$result->fetch_all(); foreach($r as $v)
{
echo
"<tr> <td>{$v[]}</td>
<td>{$v[]}</td>
<td>{$v[]}</td>
<td>{$v[]}</td>
<td>{$v[]}</td>
<td>{$v[]}</td>
<td><a href='bianji.php?id={$v[0]}'>编辑</a></td>
<td><a href='shanchuchuli.php?id={$v[0]}' onclick=\"return confirm('确定删除吗')\">删除</a></td>
</tr>";
} ?>
</table>
<br />
<br /> <a href="tianjiashuju.php"><input type="button" value="添加数据"/></a> <a href="duotiaojianchaxun.php"><input type="button" value="搜索查询" /></a> </title>
</body> </html><!--id={$v[]} 主键-->

【4】删除数据-----shanchuchuli.php
<?php
$id = $_GET["id"];
var_dump($newsid); include("DBDA.class.php"); $dx=new DBDA(); $sql = "delete from House where id='{$id}'";
$r = $dx->Query($sql,);
if($r)
{
header("location:liebiaoyemian.php");
}
else
{
echo "删除失败!";
}

【5】编辑页面-------bianji.php
<!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>
<!--newsid--><center>
<h1>修改房屋数据</h1>
<?php $id = $_GET["id"]; include("DBDA.class.php"); $dx=new DBDA(); //echo "id";
//var_dump($id); $sql="select * from house where id='{$id}'";
$r=$dx->Query($sql); ?> <form action="bianjichuli.php" method="post"> <input type="hidden" name="id" value="<?php echo $r[0][0];?>"/><!--id传过的ID--> <div>关键字:<input type="text" name="KeyWord" value="<?php echo $r[0][1];?>"/></div>
<div>区域:<input type="text" name="Area" value="<?php echo $r[0][2];?>"/></div>
<div>使用面积:<input type="text" name="SquareMeter" value="<?php echo $r[0][3];?>"/></div>
<div>租金:<input type="text" name="Rent" value="<?php echo $r[0][4];?>"/></div>
<div>租贷类型:<input type="text" name="RentType" value="<?php echo $r[0][5];?>"/></div>
<div>房屋类型:<input type="text" name="HouseType" value="<?php echo $r[0][6];?>"/></div> <div><input type="submit" value="更新"/></div> </form>
<!--<a href="chakan.php"><input type="button" value="查看"></a>-->
</center>
</body>
</html>
【6】编辑的处理页面-------bianjichuli.php
<?php
//使用加载类
include("DBDA.class.php");
$db = new DBDA();
$id=$_POST["id"];//传ID
$KeyWord = $_POST["KeyWord"];
$Area = $_POST["Area"];
$SquareMeter = $_POST["SquareMeter"];
$Rent = $_POST["Rent"];
$RentType = $_POST["RentType"];
$HouseType = $_POST["HouseType"];
$sql="update house set KeyWord='{$KeyWord}',Area='{$Area}',SquareMeter='{$SquareMeter}',Rent='{$Rent}',RentType='{$RentType}',HouseType='{$HouseType}' where id='{$id}'";// where id='{$id}
//echo $sql;
$attr = $db->Query($sql,);
//var_dump($attr);
if($attr)
{
header("location:liebiaoyemian.php");
}
else
{
echo "修改失败";
}

【7】添加数据页面--------tianjiashuju.php
<!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>
<style>
.kong
{
margin:10px 0px 10px 0px;
vertical-align:
}
</style>
<body>
<form action="tianjiachili.php" method="post"> <h3>添加房屋信息页面</h3> <div class="kong">
关键字:
<input type="text" name="KeyWord"/>
</div>
<div class="kong">
区域:
<input type="text" name="Area"/>
</div>
<div class="kong">
使用面积:
<input type="text" name="SquareMeter"/>
</div>
<div class="kong">
租金:
<input type="text" name="Rent">
</div>
<div class="kong">
租赁类型:
<input type="text" name="RentType"/>
</div>
<div class="kong">
房屋类型
<input type="text" name="HouseType"/>
</div>
<div>
<input type="submit" value="确定"/><!--插入信息-->
<a href="liebiaoyemian.php"><input type="button" value="返回主页" /></a>
</div>
</form> </body>
</html>
【8】添加的处理 --------tianjiachili.php
<?php
//$id = $_POST["id"];
$KeyWord = $_POST["KeyWord"];
$Area = $_POST["Area"];
$SquareMeter = $_POST["SquareMeter"];
$Rent = $_POST["Rent"];
$RentType = $_POST["RentType"];
$HouseType = $_POST["HouseType"]; //造连接对象
include("DBDA.class.php");
$db=new DBDA(); //写sql语句
$sql="insert into house values('','{$KeyWord}','{$Area}','{$SquareMeter}','{$Rent}','{$RentType}','{$HouseType}')";
//执行语句
$r=$db->Query($sql,);//($sql,2) 2代表增删改 错在了2上 if($r)
{
header("location:liebiaoyemian.php");
}
else{
echo "执行失败!";
}
?>


【9】多条件查询------duotiaojianchaxun.php
<!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> <body>
<form action="duotiaojianchaxun.php" method="post">
<div>区域:<input type="checkbox" onclick="CheckAll(this,'qy')" />全选</div>
<div>
<?php
include("DBDA.class.php");
$db = new DBDA(); $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 /> <div>租赁类型:<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" />
</form>
<br />
<input type="submit" value="搜索" /> <br />
<br />
<br /> <table cellpadding="1" cellspacing="1" border="1" width="100%">
<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"]))
{
$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> </body>
<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> </html>
</body>
</html>

PHP-----练习-------租房子-----增删改查,多条件查询的更多相关文章
- php连接数据库增删改查----多条件查询
关于查询,可以直接写在主页面上 来进行查询 首先,先建立一个表单 <form method="post" action="crud.php"> &l ...
- 【hbase】——Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...
- (转)Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...
- HBase之四--(1):Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...
- SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]
SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数 --创建表格 create table aa ( UserName varchar(50 ...
- 【gridview增删改查】数据库查询后lodop打印
ASP.NET中使用gridview可以很容易的把需要的数据动态显示在前台,还可以在表格里加入列进行增删改查,每次点击的时候重新加载数据,gridview也提供了分页等功能,还有一些模版让显示在前台的 ...
- 增删改查- 万能map- 模糊查询
1.编写接口 2.编写对应的mapper种的sql语句 3.测试 接口 public interface UserDao { List<User> getUserList(); //根据I ...
- LINQ的增删改查写法&&组合查询
.ToList();//返回一个集合,包含查到的所有值: .First();//返回查到的第一条数据,如果查不到会报错: .FirstOrDefault();返回查到的第一条数据,差不到返回一个nul ...
随机推荐
- 关于dll
今日看到一个不带dllmain的dll,忽然觉得有点奇怪,然后查了一下,原来dll还可以不需要dllmain,甚至可以自己定义入口 先mark以下的资料,有空再总结一下...同时dll劫持,有必要亲身 ...
- java-生成印章swing
案例1 package com; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import j ...
- DevExpress.chartContro控件保存图片和打印图片
private void pictureBox1_Click(object sender, EventArgs e) { ////实例化打印对象 PrintDocument print = new P ...
- NGUI 滑动特效之中间放大滚动
效果图如下: 其实很简单,在NGUI原有的滑动组件的基础上处理一下比例系数就好,每个块的位置是固定的,移动的是Panel. 所以呢用Panel的位置与块的位置做差在比几个块不就成了比例系数了么..自然 ...
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
spring mvc使用的默认处理字符串编码为ISO-8859-1 解决方法: 第一种方法: 对于需要返回字符串的方法添加注解,如下: @RequestMapping(value="/use ...
- python取mysql数据写入excel
环境:MySQLdb openpyxl模块 python去zabbix的mysql数据库中取交换机不同时间段的进出口流量,然后写入excel中,每天cron执行,每周四邮件发送.(代码中第一行必须加上 ...
- CRM(客户关系管理)
CRM最初是由Gartner Group提出的. CRM定义:"客户关系管理(CRM),是代表增进赢利.收入和客户满意度而设计的,企业范围的商业战略." 我们可以看出,Gartne ...
- Python Day2
一.列表 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 新建一个列表 name = ['ShaoLin','Tom','Kimi','Rain','A ...
- 图解JVM的类加载机制(详细版)
注:本文为作者整理和原创,如有转载,请注明出处. 上一篇博文,把JAVA中的Class文件格式用图形的方式画了一下,逻辑感觉清晰多了,同时,也为以后查阅的方便. Class文件只是一种静态格式的二进制 ...
- .net core