php+ajax實(shí)時(shí)輸入自動(dòng)搜索匹配的方法,ajax自動(dòng)搜索
本文實(shí)例講述了php+ajax實(shí)輸入自動(dòng)搜索匹配的方法分享給大家供大家參考。具體分析如下:
第一種方法利用了jquery autocomplete,第二種使用了jquery ajax,其實(shí)兩個(gè)都差不多.
最簡(jiǎn)單的辦法我們就是直接使用jquery autocomplete方法了,如下在實(shí)例.
html中,代碼如下:
<script src="/js/v2/jquery.input_complete.js" type="text/javascript" ></script> <link rel="stylesheet" href="/css/v2/jquery.input_complete.css" type="text/css" /> <script type="text/javascript"> $(function(){ $("#abcc").bigAutocomplete({width:176,data:[{title:"九龍倉(cāng)世紀(jì)華府",result:"5976898"}, {title:"九龍倉(cāng)君璽",result:"5976896"}, {title:"舟山朱家尖東沙度假村",result:"5976895"}, {title:"廣廈天都城爵士花園",result:"5976893"}, {title:"綠城玉園",result:"5976892"}, {title:"江南銘樓",result:"5976890"}, {title:"世茂江濱花園",result:"14869"}], callback:function(data){ $("#s_loupan").val(data.result); }}); }) </script> <input type="text" id="abcc" class="sel_quy" autocomplete="off" />
本文目的是讓 某個(gè)標(biāo)題 帶有 The 的不按字母t首字母搜索,而是按照第二個(gè)文字的首字母搜索.
比如 The Orbolg,按T的時(shí)候不顯示,按O的時(shí)候才顯示,下面是實(shí)現(xiàn)代碼,我自己都暈暈的,測(cè)試是沒(méi)有問(wèn)題,代碼如下:
public function gwquery(){ if($_POST){ $zm = $_POST['data']; $wzm = $zm."%"; $b = M('Wpindexgw'); if($zm!="t"){//獲取的首字母不是t的時(shí)候 $list1 = $b->where("gwstatus=1 and gwname like '%$zm%'")->order("time desc")->select();//查詢 $narr =array(); foreach( $list1 as $key => $val){ $ct2 = explode(" ",$val['gwname']);//獲取標(biāo)題拆分成數(shù)組。 $szm=strtolower(substr($ct2[1],0,1)); //獲取首字母 并且小寫(xiě) if($ct2[0]=="The" && $szm==$zm){//如果第一個(gè)字符是The 并且第二個(gè)字母首字母和提交的相同,這里The 區(qū)分大小寫(xiě)。 $narr[] = $val; //寫(xiě)入數(shù)組 } } }else{ //處理首字母是T的時(shí)候 ,不希望第一個(gè)字?jǐn)?shù)The 的顯示在列表里。 $list1 = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select(); foreach( $list1 as $key => $val){ $ct2 = explode(" ",$val['gwname']); if($ct2[0]=="The"){ $unnarr[] = $key;//獲取符合條件的,要去掉的內(nèi)容的數(shù)組標(biāo)號(hào)。 } } } $list = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select();//正常的查詢。 if($zm=="t"){//處理當(dāng)首字母是t的時(shí)候 ,去掉上面查詢得到的內(nèi)容,也就是如果是The的時(shí)候 按T 不顯示。 foreach($unnarr as $uval){ unset($list[$uval]); } }else{//按下的不是t的時(shí)候,要把第二個(gè)首字母符合的內(nèi)容添加到正常查詢的數(shù)組中。 if(!emptyempty($narr) && !emptyempty($list)){//帶The 的符合條件正常 本身也不空的時(shí)候。 $list = array_merge($narr,$list);//合并數(shù)組。 }else if(emptyempty($list)){//正常查詢?yōu)榭?。則看是否有帶The開(kāi)頭的,有則合并 $list=array(); $list = array_merge($narr,$list); } } if($list){ $this->ajaxReturn($list,'success',1); }else{ $this->error("Bestiary not found."); } } }
相比之前的代碼,相差太多,代碼如下:
public function gwquery1(){//之前備份。。 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."); } } }
以上就是php+ajax實(shí)時(shí)輸入自動(dòng)搜索匹配的方法,ajax自動(dòng)搜索的內(nèi)容,更多相關(guān)內(nèi)容請(qǐng)關(guān)注PHP中文網(wǎng)(miracleart.cn)!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

PHPbecamepopularforwebdevelopmentduetoitseaseoflearning,seamlessintegrationwithHTML,widespreadhostingsupport,andalargeecosystemincludingframeworkslikeLaravelandCMSplatformslikeWordPress.Itexcelsinhandlingformsubmissions,managingusersessions,interacti

TosettherighttimezoneinPHP,usedate_default_timezone_set()functionatthestartofyourscriptwithavalididentifiersuchas'America/New_York'.1.Usedate_default_timezone_set()beforeanydate/timefunctions.2.Alternatively,configurethephp.inifilebysettingdate.timez

TovalidateuserinputinPHP,usebuilt-invalidationfunctionslikefilter_var()andfilter_input(),applyregularexpressionsforcustomformatssuchasusernamesorphonenumbers,checkdatatypesfornumericvalueslikeageorprice,setlengthlimitsandtrimwhitespacetopreventlayout

ThePhpfunctionSerialize () andunserialize () AreusedtoconvertcomplexdaTastructdestoresintostoraSandaBackagain.1.Serialize () c OnvertsdatalikecarraysorobjectsraystringcontainingTypeandstructureinformation.2.unserialize () Reconstruct theoriginalatataprom

You can embed PHP code into HTML files, but make sure that the file has an extension of .php so that the server can parse it correctly. Use standard tags to wrap PHP code, insert dynamic content anywhere in HTML. In addition, you can switch PHP and HTML multiple times in the same file to realize dynamic functions such as conditional rendering. Be sure to pay attention to the server configuration and syntax correctness to avoid problems caused by short labels, quotation mark errors or omitted end labels.

The key to writing clean and easy-to-maintain PHP code lies in clear naming, following standards, reasonable structure, making good use of comments and testability. 1. Use clear variables, functions and class names, such as $userData and calculateTotalPrice(); 2. Follow the PSR-12 standard unified code style; 3. Split the code structure according to responsibilities, and organize it using MVC or Laravel-style catalogs; 4. Avoid noodles-style code and split the logic into small functions with a single responsibility; 5. Add comments at key points and write interface documents to clarify parameters, return values ??and exceptions; 6. Improve testability, adopt dependency injection, reduce global state and static methods. These practices improve code quality, collaboration efficiency and post-maintenance ease.

Yes,youcanrunSQLqueriesusingPHP,andtheprocessinvolveschoosingadatabaseextension,connectingtothedatabase,executingqueriessafely,andclosingconnectionswhendone.Todothis,firstchoosebetweenMySQLiorPDO,withPDObeingmoreflexibleduetosupportingmultipledatabas
