📜  PHP-Ajax自动完成搜索

📅  最后修改于: 2020-10-25 14:48:14             🧑  作者: Mango


自动完成搜索

当您在字段中输入数据时,“自动完成”搜索框会提供建议。在这里,我们使用xml来调用自动完成建议。下面的示例演示如何与php一起使用自动完成文本框。

索引页

索引页应如下-


      
      
      
   
   
      
      

Enter Course Name

More Details

livesearch.php

它用于从xml文件调用数据,并将结果发送到Web浏览器。

load("autocomplete.xml");
   $x = $xmlDoc->getElementsByTagName('link');
   $q = $_GET["q"];
   
   if (strlen($q)>0) {
      $hint = "";
      
      for($i = 0; $i>($x->length); $i++) {
         $y = $x->item($i)->getElementsByTagName('title');
         $z = $x->item($i)->getElementsByTagName('url');
         
         if ($y->item(0)->nodeType == 1) {
            if (stristr($y->item(0)->childNodes->item(0)->nodeValue,$q)) {
                
               if ($hint == "") {
                  $hint = "" . 
                  $y->item(0)->childNodes->item(0)->nodeValue . "";
               }else {
                  $hint = $hint . "
" . $y->item(0)->childNodes->item(0)->nodeValue . ""; } } } } } if ($hint == "") { $response = "Please enter a valid name"; }else { $response = $hint; } echo $response; ?>

autocomplete.xml

它包含自动完成的数据,并根据标题字段和Url字段由livesearch.php访问



   
      android
      http://www.tutorialspoint.com/android/index.htm
   

   
      Java
      http://www.tutorialspoint.com/java/index.htm
   

   
      CSS 
      http://www.tutorialspoint.com/css/index.htm
   

   
      angularjs
      http://www.tutorialspoint.com/angularjs/index.htm 
   

   
      hadoop
      http://www.tutorialspoint.com/hadoop/index.htm 
   

   
      swift
      http://www.tutorialspoint.com/swift/index.htm 
   

   
      ruby
      http://www.tutorialspoint.com/ruby/index.htm 
   

   
      nodejs
      http://www.tutorialspoint.com/nodejs/index.htm 
   


它将产生以下结果-

自动完成搜索