Home  >  Article  >  Backend Development  >  PHP+ajax real-time input automatic search matching method, ajax automatic search_PHP tutorial

PHP+ajax real-time input automatic search matching method, ajax automatic search_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:10:37765browse

php+ajax real-time input automatic search matching method, ajax automatic search

The example in this article describes the automatic search and matching method of php+ajax real input and shares it with everyone for your reference. The specific analysis is as follows:

The first method uses jquery autocomplete, and the second method uses jquery ajax. In fact, both are similar.

The simplest way is to use the jquery autocomplete method directly, as shown below in the example.

In html, the code is as follows:

Copy code The code is as follows:




The purpose of this article is to allow a title with The to be searched not by the first letter of the letter t, but by the first letter of the second text.

For example, The Orbolg does not display when you press T, but displays when you press O. The following is the implementation code. I am dizzy myself. There is no problem in the test. The code is as follows:

Copy code The code is as follows:
public function gwquery(){
If($_POST){
$zm = $_POST['data'];
$wzm = $zm."%";
$b = M('Wpindexgw');
If($zm!="t"){//When the first letter obtained is not t
$list1 = $b->where("gwstatus=1 and gwname like '%$zm%'")->order("time desc")->select();//Query
$narr =array();
foreach( $list1 as $key => $val){ foreach( $list1 as $key => $val){
​​​​ $ct2 = explode(" ",$val['gwname']);//Get the title and split it into an array.
              $szm=strtolower(substr($ct2[1],0,1)); //Get the first letter and lowercase it
If($ct2[0]=="The" && $szm==$zm){//If the first character is The and the first letter of the second letter is the same as submitted, The here is case-sensitive.
           $narr[] = $val; //Write into array
                                                                   }  
}else{ //When processing the first letter is T, we do not want the first word The to be displayed in the list.
         $list1 = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select();
foreach( $list1 as $key => $val){ foreach( $list1 as $key => $val){
          $ct2 = explode(" ",$val['gwname']);
If($ct2[0]=="The"){
​​​​ $unnarr[] = $key;//Get the array label of the content to be removed that meets the conditions.       
                                                                                                              }  
}
$list = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select();//Normal query.
If($zm=="t"){//When the first letter is t, remove the content obtained from the above query, that is, if it is The, press T and it will not be displayed.
foreach($unnarr as $uval){
          unset($list[$uval]);                                                                                                  }else{//When pressing something other than t, add the content whose first letter matches the second one to the normal query array.
If(!emptyempty($narr) && !emptyempty($list)){//The condition with The is normal and it is not empty.
$list = array_merge($narr,$list);//Merge arrays.
}else if(emptyempty($list)){//Normal query is empty. Then check if there is anything starting with The, and merge if there is
$list=array();
$list = array_merge($narr,$list);
}
}  
If($list){
$this->ajaxReturn($list,'success',1);
}else{
          $this->error("Bestiary not found.");
                                                                                                              }  
}

Compared with the previous code, there is a huge difference. The code is as follows:


Copy code

The code is as follows:
public function gwquery1(){//Back up before. . If($_POST){ $zm = $_POST['data']; $wzm = $zm."%";
$b = M('Wpindexgw');
$list = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select();
//dump($list);
If($list){
$this->ajaxReturn($list,'success',1);
}else{
          $this->error("Bestiary not found.");
                                                                                                              }  
}

I hope this article will be helpful to everyone’s PHP programming design.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/933607.htmlTechArticlephp+ajax real-time input automatic search matching method, ajax automatic search The example in this article tells the php+ajax real-time input automatic The search matching method is shared with everyone for your reference. The specific analysis is as follows...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn