zoukankan      html  css  js  c++  java
  • php学习之sqlite查询语句之多条件查询

    一。PHP+Mysql多条件-多值查询示例代码:


    index.html代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>SQL多条件查询示例</title>
    </head>
    <body>
    <form method="post" action="deal.php">
    <h1>房屋出租</h1>
    房屋类型:<select name="type">
    <option value="1">一居室</option>
    <option value="2">二居室</option>
    <option value="3">三居室</option>
    </select>
    面积:<input name="area" type="text"/>
    地址:<input name="addr" type="text"/>
    <input name="btn" type="submit" value="搜索" />
    </form>
    </body>
    </html>


    deal.php文件:
    <?php
    //连接数据库
    $conn=mysql_connect("localhost","root","");

    //选择数据库
    $db=mysql_select_db("数据库名");

    //接收 参数
    $type=$_POST['type'];
    $area=$_POST['area'];
    $addr=$_POST['addr'];

    //SQL语句主题
    $query="select * from room where "; 

    //根据条件和传的值拼接sql语句
    //判断面积不为空
    if($type!=""){
    //然后根据具体面积分情况拼接
    switch($type){
    case 1:
    //一居室
    $query.=" room_type=1"; 
    break;
    case 2:
    $query.=" room_type=2";
    break;
    case 3:
    $query.=" room_type=3";
    break;
    }
    }

    //面积
    if($area!=""){
    $query.=" and area ={$area}";
    }

    //地址
    if($addr!=""){
    $query.=" and addr like '%{$addr}%'"; //地址
    }

    //执行查询
    $result=mysql_query($query);

    //遍历结果
    echo "搜搜结果如下:";
    while($row=mysql_fetch_array($result)){

    echo "地址:".$row['addr'];
    echo "";
    echo "面积:".$row['area'];
    echo "";
    echo "居室:".$row['type'];
    echo "";
    echo "价格:".$row['addr'];
    echo "";
    //等等
    }

    ?>

    二。价格区间式多条件查询

    例子:

    <?php
    //把该传的条件传到php程序里:比如有三个条件price=1000~3000,name = nokia,type=2
    //在php里分别接到这些条件,我定义为以下几个:
    $pmax = 3000;
    $pmin = 1000;
    $name = 'nokia';
    $type = 2;
    //下面是sql语句样式:
    //假如你的sql语句前半部分是
    $sql = 'select * from `表名` where 1 ';
    //关键看下面
    if($pmax & $pmin)
    {
    $sql .='and price> '.$pmin.' and price < '.$pmin.' ';//注意是.=
    }
    if($name)
    {
    $sql .= 'and name like %'.$name.'% ';
    }
    if($type)
    {
    $sql .= 'and type = '.$type.'';
    }
    /*具体连接条件是and 还是 or 根据要求定*/
    ?>

  • 相关阅读:
    JavaScript之六种排序法
    实习的意义
    HTML、JS、CSS之特殊字符
    CSS之全屏背景图
    Swiper之滑块1
    (转)Android之接口回调机制
    (转)Android之自定义适配器
    反射
    对数据库事务、隔离级别、锁、封锁协议的理解及其关系的理解
    get和Post区别
  • 原文地址:https://www.cnblogs.com/axj1993/p/6433533.html
Copyright © 2011-2022 走看看