PHP 练习3:租房子

Posted Strive-count

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 练习3:租房子相关的知识,希望对你有一定的参考价值。

一、题目要求

二、题目做法

1.建立数据库

 

 

 

2.封装类文件

<?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=1,$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==1)
            {
               //如果是查询语句,返回二维数组
               return $result->fetch_all();    
            }
            else
            {
                //如果是其他语句,返回true或false
               return $result;    
            }
        
        }
        else
        {
            return"连接失败";            
        }        
    }    
}
?>

 

 3.租房子首页

<!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="1" border="1" ellspacing="1">
<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,1);
//$attr=$result->fetch_all();

foreach($r 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>
<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>

 

 

(4)删除数据处理页面

<?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,2);
if($r)
{
    header("location:liebiaoyemian.php");
}
else
{
    echo "删除失败!";
}

 

5.编辑页面

<!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.编辑处理页面

<?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,2);
    //var_dump($attr);
    if($attr)
    {
        header("location:liebiaoyemian.php");   
    }
    else
    {
        echo "修改失败";   
    }

 

 7.添加数据页面

<!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.添加数据处理页面

<?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,2);//($sql,2)   2代表增删改    错在了2上

if($r) 
{
    header("location:liebiaoyemian.php");
}
else{
    echo "执行失败!";
}
 ?>

 

9.搜索页面(多条件查询)

<!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>
   

以上是关于PHP 练习3:租房子的主要内容,如果未能解决你的问题,请参考以下文章

斯威夫特 3 - 'EXC_BAD_INSTRUCTION(代码 = EXC_1386_INVOP,子代码 = 0x0)' 错误

PYTHON学习第四天课后总结:

06 流程控制之if判断

PHP租房子练习

while循环

错误 - EXC_BREAKPOINT(代码=1,子代码=0x100308448)