一、题目要求

二、题目做法

1.建立数据库

2.封装类文件

  1. <?php
  2. class DBDA
  3. {
  4. public $fuwuqi="localhost"; //服务器地址
  5. public $yonghuming="root";//用户名
  6. public $mima="";//密码
  7. public $dbconnect;//连接对象
  8. //操作数据库的方法
  9.  
  10. //$sql代表需要执行的SQL语句
  11. //$type代表SQL语句的类型,1代表查询,2代表增删改
  12. //$shujukuming代表数据库的名称
  13. //如果是查询,返回二维数组
  14. //如果是增删改,返回true或false
  15.  
  16. function Query($sql,$type=1,$shujukuming="house")
  17. {
  18. //造连接对象
  19. $this->dbconnect = new MySQLi($this->fuwuqi,$this->yonghuming,$this->mima,$shujukuming);
  20.  
  21. //判断是否出错
  22. if(!mysqli_connect_error())
  23. {
  24. //如果连接成功,执行SQL语句
  25. $result = $this->dbconnect->query($sql);
  26.  
  27. //根据语句类型判断
  28. if($type==1)
  29. {
  30. //如果是查询语句,返回二维数组
  31. return $result->fetch_all();
  32. }
  33. else
  34. {
  35. //如果是其他语句,返回true或false
  36. return $result;
  37. }
  38.  
  39. }
  40. else
  41. {
  42. return"连接失败";
  43. }
  44. }
  45. }
  46. ?>

3.租房子首页

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>租房子---首页</title>
  6. </head>
  7. <body>
  8.  
  9. <table width="1000px" cellpadding="1" border="1" ellspacing="1">
  10. <tr>
  11.  
  12. <td>关键字</td>
  13. <td>区域</td>
  14. <td>使用面积</td>
  15. <td>租金</td>
  16. <td>租贷类型</td>
  17. <td>房屋类型</td>
  18. <td></td>
  19. <td></td>
  20. </tr>
  1. <?php
  2.  
  3. include("DBDA.class.php");
  4.  
  5. $dx=new DBDA();
  6.  
  7. $sql="select * from house";
  8. $r = $dx->Query($sql,1);
  9. //$attr=$result->fetch_all();
  10.  
  11. foreach($r as $v)
  12. {
  13. echo
  14. "<tr>
  15.  
  16. <td>{$v[1]}</td>
  17. <td>{$v[2]}</td>
  18. <td>{$v[3]}</td>
  19. <td>{$v[4]}</td>
  20. <td>{$v[5]}</td>
  21. <td>{$v[6]}</td>
  22. <td><a href='bianji.php?id={$v[0]}'>编辑</a></td>
  23. <td><a href='shanchuchuli.php?id={$v[0]}' onclick=\"return confirm('确定删除吗')\">删除</a></td>
  24. </tr>";
  25. }
  26.  
  27. ?>
  1. </table>
  2. <br />
  3. <br />
  4. <a href="tianjiashuju.php"><input type="button" value="添加数据"/></a>
  5. <a href="duotiaojianchaxun.php"><input type="button" value="搜索查询" /></a>
  6. </title>
  7. </body>
  8. </html>

(4)删除数据处理页面

  1. <?php
  2. $id = $_GET["id"];
  3. var_dump($newsid);
  4.  
  5. include("DBDA.class.php");
  6.  
  7. $dx=new DBDA();
  8.  
  9. $sql = "delete from House where id='{$id}'";
  10. $r = $dx->Query($sql,2);
  11. if($r)
  12. {
  13. header("location:liebiaoyemian.php");
  14. }
  15. else
  16. {
  17. echo "删除失败!";
  18. }

5.编辑页面

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>修改房屋数据</title>
  6. </head>
  7. <body>
  8. <!--newsid--><center>
  9. <h1>修改房屋数据</h1>
  1. <?php
  2.  
  3. $id = $_GET["id"];
  4.  
  5. include("DBDA.class.php");
  6.  
  7. $dx=new DBDA();
  8.  
  9. //echo "id";
  10. //var_dump($id);
  11.  
  12. $sql="select * from house where id='{$id}'";
  13. $r=$dx->Query($sql);
  14.  
  15. ?>
  1. <form action="bianjichuli.php" method="post">
  2. <input type="hidden" name="id" value="<?php echo $r[0][0];?>"/><!--id传过的ID-->
  3. <div>关键字:<input type="text" name="KeyWord" value="<?php echo $r[0][1];?>"/></div>
  4. <div>区域:<input type="text" name="Area" value="<?php echo $r[0][2];?>"/></div>
  5. <div>使用面积:<input type="text" name="SquareMeter" value="<?php echo $r[0][3];?>"/></div>
  6. <div>租金:<input type="text" name="Rent" value="<?php echo $r[0][4];?>"/></div>
  7. <div>租贷类型:<input type="text" name="RentType" value="<?php echo $r[0][5];?>"/></div>
  8. <div>房屋类型:<input type="text" name="HouseType" value="<?php echo $r[0][6];?>"/></div>
  9. <div><input type="submit" value="更新"/></div>
  10. </form>
  11. <!--<a href="chakan.php"><input type="button" value="查看"></a>-->
  12. </center>
  13. </body>
  14. </html>

6.编辑处理页面

  1. <?php
  2.  
  3. //使用加载类
  4.  
  5. include("DBDA.class.php");
  6. $db = new DBDA();
  7. $id=$_POST["id"];//传ID
  8. $KeyWord = $_POST["KeyWord"];
  9. $Area = $_POST["Area"];
  10. $SquareMeter = $_POST["SquareMeter"];
  11. $Rent = $_POST["Rent"];
  12. $RentType = $_POST["RentType"];
  13. $HouseType = $_POST["HouseType"];
  14. $sql="update house set KeyWord='{$KeyWord}',Area='{$Area}',SquareMeter='{$SquareMeter}',Rent='{$Rent}',RentType='{$RentType}',HouseType='{$HouseType}' where id='{$id}'";// where id='{$id}
  15.  
  16. //echo $sql;
  17.  
  18. $attr = $db->Query($sql,2);
  19. //var_dump($attr);
  20. if($attr)
  21. {
  22. header("location:liebiaoyemian.php");
  23. }
  24. else
  25. {
  26. echo "修改失败";
  27. }

7.添加数据页面

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>添加页面</title>
  6.  
  7. </head>
  8. <style>
  9. .kong
  10. {
  11. margin:10px 0px 10px 0px;
  12. vertical-align:
  13. }
  14. </style>
  15. <body>
  16. <form action="tianjiachili.php" method="post">
  17.  
  18. <h3>添加房屋信息页面</h3>
  19.  
  20. <div class="kong">
  21. 关键字:
  22. <input type="text" name="KeyWord"/>
  23. </div>
  24. <div class="kong">
  25. 区域:
  26. <input type="text" name="Area"/>
  27. </div>
  28. <div class="kong">
  29. 使用面积:
  30. <input type="text" name="SquareMeter"/>
  31. </div>
  32. <div class="kong">
  33. 租金:
  34. <input type="text" name="Rent">
  35. </div>
  36. <div class="kong">
  37. 租赁类型:
  38. <input type="text" name="RentType"/>
  39. </div>
  40. <div class="kong">
  41. 房屋类型
  42. <input type="text" name="HouseType"/>
  43. </div>
  44. <div>
  45. <input type="submit" value="确定"/><!--插入信息-->
  46. <a href="liebiaoyemian.php"><input type="button" value="返回主页" /></a>
  47. </div>
  48. </form>
  49.  
  50. </body>
  51. </html>

8.添加数据处理页面

  1. <?php
  2. //$id = $_POST["id"];
  3. $KeyWord = $_POST["KeyWord"];
  4. $Area = $_POST["Area"];
  5. $SquareMeter = $_POST["SquareMeter"];
  6. $Rent = $_POST["Rent"];
  7. $RentType = $_POST["RentType"];
  8. $HouseType = $_POST["HouseType"];
  9.  
  10. //造连接对象
  11. include("DBDA.class.php");
  12. $db=new DBDA();
  13.  
  14. //写sql语句
  15. $sql="insert into house values('','{$KeyWord}','{$Area}','{$SquareMeter}','{$Rent}','{$RentType}','{$HouseType}')";
  16. //执行语句
  17. $r=$db->Query($sql,2);//($sql,2) 2代表增删改 错在了2上
  18.  
  19. if($r)
  20. {
  21. header("location:liebiaoyemian.php");
  22. }
  23. else{
  24. echo "执行失败!";
  25. }
  26. ?>

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

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>租房子----多条件查询</title>
  6. </head>
  7.  
  8. <body>
  9.  
  10. <body>
  11. <form action="duotiaojianchaxun.php" method="post">
  12. <div>区域:<input type="checkbox" onclick="CheckAll(this,'qy')" />全选</div>
  13. <div>
  14.  
  15. <?php
  16. include("DBDA.class.php");
  17. $db = new DBDA();
  18.  
  19. $sqlqy = "select distinct Area from house";
  20. $attrqy = $db->Query($sqlqy);
  21. //var_dump($attrqy);
  22.  
  23. foreach($attrqy as $v)
  24. {
  25. echo "<input class='qy' type='checkbox' value='{$v[0]}' name='qy[]'/>{$v[0]} ";
  26. }
  27. ?>
  28.  
  29. </div><br />
  30.  
  31. <div>租赁类型:<input type="checkbox" onclick="CheckAll(this,'zl')" />全选</div>
  32. <div>
  33.  
  34. <?php
  35.  
  36. $sqlzl = "select distinct RentType from House";
  37. $attrzl = $db->Query($sqlzl);
  38.  
  39. foreach($attrzl as $v)
  40. {
  41. echo "<input class='zl' type='checkbox' value='{$v[0]}' name='zl[]'/>{$v[0]} ";
  42. }
  43. ?>
  44.  
  45. </div><br />
  46.  
  47. <div>房屋类型:<input type="checkbox" onclick="CheckAll(this,'fw')" />全选</div>
  48. <div>
  49.  
  50. <?php
  51.  
  52. $sqlfw = "select distinct HouseType from House";
  53. $attrfw = $db->Query($sqlfw);
  54. //var_dump($attrqy);
  55.  
  56. foreach($attrfw as $v)
  57. {
  58. echo "<input class='fw' type='checkbox' value='{$v[0]}' name='fw[]'/>{$v[0]} ";
  59. }
  60. ?>
  61.  
  62. </div><br />
  63.  
  64. <div>关键字:<input type="text" name="keyword" id="key" />
  65. </form>
  66. <br />
  67. <input type="submit" value="搜索" />
  68.  
  69. <br />
  70. <br />
  71. <br />
  72.  
  73. <table cellpadding="1" cellspacing="1" border="1" width="100%">
  74. <tr>
  75. <td>关键字</td>
  76. <td>区域</td>
  77. <td>面积</td>
  78. <td>租金</td>
  79. <td>租赁类型</td>
  80. <td>房屋类型</td>
  81. </tr>
  1. <?php
  2.  
  3. $tj = "";
  4. $tj1 = "1=1";
  5. $tj2 = "1=1";
  6. $tj3 = "1=1";
  7. $tj4 = "1=1";
  8.  
  9. if(!empty($_POST["qy"]))
  10. {
  11. $attr = $_POST["qy"];
  12. $str = implode("','",$attr);
  13. $tj1 = " Area in ('{$str}')";
  14. }
  15.  
  16. if(!empty($_POST["zl"]))
  17. {
  18. $attr = $_POST["zl"];
  19. $str = implode("','",$attr);
  20. $tj2 = " RentType in ('{$str}')";
  21. }
  22.  
  23. if(!empty($_POST["fw"]))
  24. {
  25. $attr = $_POST["fw"];
  26. $str = implode("','",$attr);
  27. $tj3 = " HouseType in ('{$str}')";
  28. }
  29.  
  30. if(!empty($_POST["keyword"]))
  31. {
  32. $attr = $_POST["keyword"];
  33. $tj3 = " keyword like '%{$attr}%'";
  34. }
  35.  
  36. $tj = " Where {$tj1} and {$tj2} and {$tj3} and {$tj4}";//Where 前加空格
  37.  
  38. $sql = "select * from House".$tj;
  39. $attrall = $db->Query($sql);
  40. //var_dump($attrall);
  41.  
  42. foreach($attrall as $v)
  43. {
  44. echo "<tr>
  45. <td>{$v[1]}</td>
  46. <td>{$v[2]}</td>
  47. <td>{$v[3]}</td>
  48. <td>{$v[4]}</td>
  49. <td>{$v[5]}</td>
  50. <td>{$v[6]}</td>
  51. </tr>";
  52. }
  53.  
  54. ?>
  1. </table>
  1. </body>
  2. <script type="text/javascript">
  3. function CheckAll(a,b)//this表示该
  4. {
  5. var qx = a.checked;
  6. var ck = document.getElementsByClassName(b);
  7. for(var i =0;i<ck.length;i++)
  8. {
  9. ck[i].checked = qx;
  10. }
  11. }
  12.  
  13. </script>
  14.  
  15. </html>
  16. </body>
  17. </html>

11月6日上午PHP练习《租房子》解析的更多相关文章

  1. 11月13日上午ajax返回数据类型为JSON数据的处理

    ajax返回数据类型为JSON数据的处理 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu ...

  2. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  3. 11月8日上午Jquery的基础语法、选取元素、操作元素、加事件、挂事件及移除事件

    jquery基础知识 1.jquery文件的引入,所有的js代码要写在下面那段代码下面. <script src="../jquery-1.11.2.min.js">& ...

  4. 11月7日上午PHP会话控制(session和cookie)、跨页面传值

    1.session  登录上一个页面以后,长时间没有操作,刷新页面以后需要重新登录. 特点:(1)session是存储在服务器:   (2)session每个人(登陆者)存一份: (3)session ...

  5. 11月3日上午PHP练习《投票》

    1.建立数据库 表1:DiaoYanTiMu 表2:DiaoYanXuanXiang 2.页面 页面1:投票首页 <!DOCTYPE html PUBLIC "-//W3C//DTD ...

  6. 11月1日上午PHP------empty、 is_null、isset、unset的区别

    1.empty 判断一个变量是否为"空".null.false.00.0.'0′.』.为以上值的变量在检测時都将返回true. 2.isset 判断一个变量是否已经设置.0.00. ...

  7. 11月1日上午PHP批量删除

    1.在主页面上添加批量删除有关代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  8. 11月30日《奥威Power-BI智能分析报表制作方法》腾讯课堂开课啦

    这么快一周就过去了,奥威公开课又要与大家见面咯,上节课老师教的三种报表集成方法你们都掌握了吗?大家都知道,学习的结果在于实际应用,想要熟练掌握新内容的要点就在于去应用它.正是基于这一要点,每一期的课程 ...

  9. 11月23日《奥威Power-BI报表集成到其他系统》腾讯课堂开课啦

    听说明天全国各地区都要冷到爆了,要是天气冷到可以放假就好了.想象一下大冷天的一定要在被窝里度过才对嘛,索性明天晚上来个相约吧,相约在被窝里看奥威Power-BI公开课如何?        上周奥威公开 ...

随机推荐

  1. JS导出PDF插件(支持中文、图片使用路径)

    在WEB上想做一个导出PDF的功能,发现jsPDF比较多人推荐,遗憾的是不支持中文,最后找到pdfmake,很好地解决了此问题.它的效果可以先到http://pdfmake.org/playgroun ...

  2. Windows 10 安装双系统 CentOS 7

    系统环境:Windows 10 && CentOS 7 准备工具: ●CentOS7 官网下载地址:https://wiki.centos.org/Download (注意: i386 ...

  3. hadoop2.6.2+hbase+zookeeper环境搭建

    1.hadoop环境搭建,版本:2.6.2,参考:http://www.cnblogs.com/bookwed/p/5251393.html 启动服务:在master机器上,进入hadoop安装目录, ...

  4. UrlRewritingNet伪静态的使用方法与解决方案(URL重写)

    在建站初期时,我们往往需要考虑的是使用真静态还是伪静态,这对于往后的站点配置,延展性都会产生深远的影响. 我使用伪静态的唯一目的:SEO优化.毋容置疑,伪静态在对于Spider是非常有利的,因此,我更 ...

  5. Ubuntu安装Svn,提供http访问

    安装相关package sudo apt-get install subversion subversion-tools apache2 libapache2-svn apache2-utils 创建 ...

  6. 浅谈Linux中的信号处理机制(三)

    一晃眼,已经到9月底了,都来不及去感慨时间匆匆.最近常常会想明年的今天我将会在那里干着什么样的工作?对未来又是憧憬又是担忧,压力山大.无论如何现在还是踏踏实实的学习吧,能这样安安静静学习的日子也不多了 ...

  7. JustWe-WebServer Android上的Http服务器

    JustWe-WebServer Android手机上的Http服务器,可以用于内网/外网的数据交换. ps: 这个项目是JustWeEngine游戏框架中处理网络事件的一部分. 如何使用 设置as ...

  8. python SQLAlchemy

    这里我们记录几个python SQLAlchemy的使用例子: 如何对一个字段进行自增操作 user = session.query(User).with_lockmode('update').get ...

  9. HTTP状态码对应

    HTTP的状态码 对于状态码大家如果经常在线买东西就能知道,我们买了东西就会有个订单状态:出库.发货中.送达中.送达等,其实这些状态就是状态码,只不过这些状态码都是文字.HTTP 响应的时候也有状态码 ...

  10. PL/SQL 如何查看当前连接信息以及SQL PLUS如何指定IP地址

    1.通过PL/SQL 想连接别的数据库可以通过在服务名前面加上IP和左斜线来实现: 2.有时我们的IP和左斜线不用输也能连别的数据库,是因为在一个文件里配置好了.这个文件在哪里? 在这个路径下的 NE ...