• 技术文章 >后端开发 >php教程

    PHP和JS实现搜索提示功能代码分享

    小云云小云云2018-03-14 09:22:13原创709
    本文主要和大家介绍了PHP+JS实现的实时搜索提示功能,涉及php结合ajax实时传输数据与字符串的遍历、匹配相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。

    效果图如下:

    代码如下:

    HTML代码:(该代码用两种方法实现,一种Jquery,一种原生JS)


    <html>
    <head>
      <script src="/DelphiRequest/search/js/jquery.js"></script>
      <script>
    /*用原生js实现
    //    function showResult(str)
    //    {
    //      if (str.length==0)
    //      {
    //        document.getElementById("livesearch").innerHTML="";
    //        document.getElementById("livesearch").style.border="0px";
    //        return;
    //      }
    //      if (window.XMLHttpRequest)
    //      {// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行
    //        xmlhttp=new XMLHttpRequest();
    //      }
    //      else
    //      {// IE6, IE5 浏览器执行
    //        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    //      }
    //      xmlhttp.onreadystatechange=function()
    //      {
    //        if (xmlhttp.readyState==4 && xmlhttp.status==200)
    //        {
    //          document.getElementById("livesearch").innerHTML=xmlhttp.responseText;
    //          document.getElementById("livesearch").style.border="1px solid #A5ACB2";
    //        }
    //      }
    //      xmlhttp.open("GET","livesearch.php?q="+str,true);
    //      xmlhttp.send();
    //    }
    */
    //用jquery实现
         function showResult(str){
           $.ajax({
             type: "GET",
             url : "livesearch.php",
             datatype : 'json',
             data: {'q':str} ,
             success :function (data) {
               document.getElementById("livesearch").innerHTML=data;
               document.getElementById("livesearch").style.border="1px solid #A5ACB2";
             }
           })
         }
      </script>
    </head>
    <body>
    <form>
      <input type="text" size="30" onkeyup="showResult(this.value)">
      <p id="livesearch"></p>
    </form>
    </body>
    </html>

    PHP代码如下:(PHP不仅可以考虑直接使用数组,也可以考虑直接查询数据库,获取数据库内容,本代码使用的是数组。)


    <?php
    $provinces=array("beijing","tianjin","shanghai","chongqing","hebei","henan","heilongjiang","jilin","changchun",
      "shandong","anhui","shanxi","guangzhou","yunnan","hainan","xizang","qinghai","fujian","guizhou","jiangsu",
      "zhejiang","guangzhou","yunan","hainan","xizang","neimenggu","sichuan","gansu","ningxia","xianggang","aomen");
    $tmp=$_GET['q'];
    $val=array();
    $k=0;
    if (strlen($tmp)>0)
    {
      for($i=0;$i<31;$i++){
        if(strpos($provinces[$i],$tmp)!==false){
           //传递值给val
           $val[$k]=$provinces[$i];
           //下标增加
           $k=$k+1;
        }
      }
      //遍历val数组
      for($j=0;$j<count($val);$j++)
      {
        echo $val[$j];
        echo "<br>";
      }
    }
    ?>

    相关推荐:

    ajax之搜索提示_PHP教程

    PHP 搜索提示:search-suggest

    php+jquery 实现搜索提示功能实例

    以上就是PHP和JS实现搜索提示功能代码分享的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:javascript php 代码
    上一篇:PHP实现防止SQL注入的方法实例 下一篇:PHP简单路由和类自动加载功能的实现代码
    大前端线上培训班

    相关文章推荐

    • PHP中获取SQL的查询结果的常用函数整理(实例详解)• PHP中怎样去连接MySQL数据库?• PHP中mysqli_select_db与mysqli_query函数的用法• 你必须了解PHP中什么是抽象类和抽象方法• PHP中怎样完成Cookie的创建、读取和删除?

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网