首页 > 其他 > 详细

关键字查询

时间:2016-03-31 12:34:07      阅读:255      评论:0      收藏:0      [点我收藏+]

一:只有一个文本框输入关键字查询

 

技术分享

输入关键字 

技术分享

<!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="AMlianxi.php" method="post">
<div>
    名称:
    <input type="text" name="name" />
    <input type="submit" value="查询" />


</div>
</form>
<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
    <td>代号</td>
    <td>名字</td>
    <td>价格</td>

</tr>

<?php
    include("DBDA.php");
    $db= new DBDA();
    
    $str="";
    if(!empty($_POST["name"]))    //判断是不是空
    {
        $name =$_POST["name"];
        if($name !="")            //判断是不是空字符串
        {
            $str =$str." where name like ‘%{$name}%‘ ";
            }
        }
    
    
    $sql = "select code,name,price from car".$str;
    
    $attr = $db->Query($sql,$type=1,$db="xinjian");
    
    for($i=0;$i<count($attr);$i++)
    {
        echo "<tr><td>{$attr[$i][0]}</td><td>{$attr[$i][1]}</td><td>{$attr[$i][2]}</td></tr>";
        }

?>


</table>
</body>
</html>

二:两个文本框 输入关键字查询

注意:可能出现4种情况

    1.第一个条件符合,第二个也符合

    2.第一个条件符合,第二个不符合

    3.第一个条件不符合,第二个符合

    4.第一个条件不符合,第二也不符合

思路:在第一种方法的sql语句中加where,分别查询两列,重点是两个条件需要用and链接

<!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="AMlianxi.php" method="post">
<div>
    名称:
    <input type="text" name="name" />
    价格:
    <input type="text" name="price" />
    <input type="submit" value="查询" />


</div>
</form>
<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
    <td>代号</td>
    <td>名字</td>
    <td>价格</td>

</tr>

<?php
    include("DBDA.php");
    $db= new DBDA();
    
    @$name=$_POST["name"];
    @$price=$_POST["price"];  //定义两个变量接收input输入的内容
    
    
    $str=" where";    //先定义一个变量等于where
    
    $tj1 ="";
    $tj2 ="";        //定义两个变量 tj1,tj2
    
    //开始判断第一个条件
    if($name !="")
    {
        $tj1=" name like ‘%{$name}%‘"    ;    //如果输入的内容不为空,tj1等于where后面的一半select语句 
        }
    else
    {
        $tj1 = " 1=1";                //如果输入的内容是空,因为有个and,所以随便加一个绝对成立的条件
        }
    //判断第二个条件
    if($price !="")
    {
        $tj2 = " price = ‘{$price}‘";    //price这一个列等于输入进来的$price
        }
    else
    {
        $tj2 = " 1=1";
        }
    
    //判断完之后
    $str = $str.$tj1." and".$tj2;//这句话的意思是,假如name没输,是个空的,那么这句话就等于 $str=where 1=1 and price = ‘{$price}‘
                                //把$str并到下面sql语句中就完整了
    
    $sql = "select code,name,price from car".$str;
    
    $attr = $db->Query($sql,$type=1,$db="xinjian");
    
    for($i=0;$i<count($attr);$i++)
    {
        echo "<tr><td>{$attr[$i][0]}</td><td>{$attr[$i][1]}</td><td>{$attr[$i][2]}</td></tr>";
        }

?>


</table>
</body>
</html>

技术分享

名称输入“奥迪”,查询如下

技术分享

名称什么也不输入,价格输入30.00,查询如下

技术分享

 

注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意空格!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

关键字查询

原文:http://www.cnblogs.com/zhanghaozhe8462/p/5340388.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!