zoukankan      html  css  js  c++  java
  • 多条件查询练习

    如何做查询,首先引入一张汽车表,输出所有数据查出来显示,然后再做查询

    <body>
    <h1>查询页面</h1>
    <table width="100%" border="1" cellpadding="0" cellspacing="0">//先建一个table表
        <tr>  //先做表头
            <td>代号</td>
            <td>名称</td>
            <td>系列</td>
            <td>时间</td>
            <td>油耗</td>
            <td>功率</td>
        </tr>
    //显示数据,要从数据库读,所以嵌入PHP代码 <?php
    //造一个连接对象
    $db = new MySQLi("localhost","root","15864477048","test");

    //写SQL语句
    $sql = "select * from car";
    //调用 执行
    $result = $db->query($sql);
    //读数据
    $attr = $result->fetch_all(); //显示 foreach($attr as $v) { echo"<tr> <td>{$v[0]}</td> <td>{$v[1]}</td> <td>{$v[2]}</td> <td>{$v[3]}</td> <td>{$v[4]}</td> <td>{$v[5]}</td> </tr>"; } ?> </table>

    接下来是根据一个关键字查询

    <h1>查询页面</h1>
    <from action="carchaxun.php" method="post">   //加以表单因为要打到一个页面处理
    <div>请输入名称:
    <input type="text" name="name" />
    <input type="submit" value="查询" />
    </div>
    </from> <br /> //加一个换行

    模糊查询

    <?php
    $db = new MySQLi("localhost","root","15864477048","test");
    
    $name = "";
    if(!empty($_POST["name"]))
    {
         $name = $_POST["name"];
    }
    
    $tj = " name like '%{$name}%' ";//模糊查询
    ?>
    
    <form action="carchaxun.php" method="post">
    <div>请输入名称:
    <input type="text" name="name" />
    <input type="submit" value="查询" />
    </div>
    </form>
    <br />
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
        <tr>
            <td>代号</td>
            <td>名称</td>
            <td>系列</td>
            <td>时间</td>
            <td>油耗</td>
            <td>功率</td>
        </tr>
        <?php
        
        
        $sql = "select * from car where{$tj}";
        
        
        $result = $db->query($sql);
        $attr = $result->fetch_all();
        
        foreach($attr as $v)
        {
            echo"<tr>
            <td>{$v[0]}</td>
            <td>{$v[1]}</td>
            <td>{$v[2]}</td>
            <td>{$v[3]}</td>
            <td>{$v[4]}</td>
            <td>{$v[5]}</td>
        </tr>";
        }
        ?>
    </table>

    输入奥迪点击查询,根据奥迪来查  以上是单条件查询,适用范围窄

    默认查所有数据恒成立,输入值后根据条件查

    <?php
    $db = new MySQLi("localhost","root","15864477048","test");
    
    $tj ="1=1";//条件默认等于恒成立的
    if(!empty($_POST["name"]))
    {
         $name = $_POST["name"];
         $tj =" name like'%{$name}%'";
    }
    
    
    ?>

    关键字做特殊显示

    <?php
    $db = new MySQLi("localhost","root","15864477048","test");
    
    $tj =" 1=1 ";//条件默认等于恒成立的
    
    $name = "";    //定义外层,在外界可以访问到
    
    if(!empty($_POST["name"]))
    {
         $name = $_POST["name"];
         $tj =" name like'%{$name}%'";
    }
    
    
    ?>
    
    <form action="carchaxun.php" method="post">
    <div>请输入名称:
    <input type="text" name="name" />
    <input type="submit" value="查询" />
    </div>
    </form>
    <br />
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
        <tr>
            <td>代号</td>
            <td>名称</td>
            <td>系列</td>
            <td>时间</td>
            <td>油耗</td>
            <td>功率</td>
        </tr>
        <?php
        
        $sql = "select * from car where{$tj}";
        
        $result = $db->query($sql);
        $attr = $result->fetch_all();
        
        foreach($attr as $v)
        {  
            //替换字符串  括号里(我要查找的关键字 , 替换成什么 , 字符串 )
            $str = str_replace($name,"<span style='color:red'>{$name}</span>",$v[1]);
            //也可以用 mark 可以直接做特殊处理 给文字做了标记
            echo"<tr>
            <td>{$v[0]}</td>
            <td>{$str}</td>
            <td>{$v[2]}</td>
            <td>{$v[3]}</td>
            <td>{$v[4]}</td>
            <td>{$v[5]}</td>
        </tr>";
        }
        ?>

    <span></span>也可以替换用 mark 可以直接做特殊处理 给文字做了标记

    多条件查询方法用两个条件查询做例子 用两个if判断实现4种逻辑
    <form action="carchaxun.php" method="post">
    <div>请输入名称:
    <input type="text" name="name" />
    
    请输入系列代号:
    <input type="text" name="brand" />
    <input type="submit" value="查询" />
    </div>
    </form>
    
    

    
    
    <body>
    <h1>查询页面</h1>
    <?php
    $db = new MySQLi("localhost","root","15864477048","test");
    
    $tj1 = " 1=1 ";
    $tj2 = " 1=1 ";
    $name = "";
    
    if(!empty($_POST["name"]))
    {
        $name= $_POST["name"];
        $tj1 = " name like '%{$name}%' ";    
    }
    
    if(!empty($_POST["brand"]))
    {
         $brand =$_POST["brand"];
         $tj2 ="brand ='{$brand}'";
    }
    
    ?>
    
    <form action="carchaxun.php" method="post">
    <div>请输入名称:
    <input type="text" name="name" />
    
    请输入系列代号:
    <input type="text" name="brand" />
    <input type="submit" value="查询" />
    </div>
    </form>
    <br />
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
        <tr>
            <td>代号</td>
            <td>名称</td>
            <td>系列</td>
            <td>时间</td>
            <td>油耗</td>
            <td>功率</td>
        </tr>
        <?php
        
        $sql = "select * from car where{$tj1} and {$tj2}";
        
        $result = $db->query($sql);
        $attr = $result->fetch_all();
        
        foreach($attr as $v)
        {  
            //替换字符串  括号里(我要查找的关键字 , 替换成什么 , 字符串 )
            $str = str_replace($name,"<span style='color:red'>{$name}</span>",$v[1]);  //也可以用 mark 可以直接做特殊处理 给文字做了标记
            
            echo"<tr>
            <td>{$v[0]}</td>
            <td>{$str}</td>
            <td>{$v[2]}</td>
            <td>{$v[3]}</td>
            <td>{$v[4]}</td>
            <td>{$v[5]}</td>
        </tr>";
        }
        ?>
    </table>
    </body>
    
    

    一个搜寻时

     

    两个条件同时搜寻时

    显示查找值

    <div>请输入名称:
    <input type="text" name="name" value="<?php echo $name?>" />

    如果查询没有结果,显示提示无信息怎么做?

  • 相关阅读:
    转 intent常用功能
    Android 中Activity生命周期分析(二):从AActivity 到BActivity过程分析
    Android 面试题(经典)
    Android 中Activity生命周期分析:Android中横竖屏切换时的生命周期过程
    ios 开发中 developer tools access 总是要输入密码问题的解决
    【转】android 自定义控件
    【转】项目管理
    程序员的出路
    第一章 Actionscript学习基本知识笔记及flashdevelop软件的安装问题
    第十五章 php时区报错 We selected the timezone 'UTC'
  • 原文地址:https://www.cnblogs.com/zqseven/p/6211034.html
Copyright © 2011-2022 走看看