Php 改进我的即时搜索问题 好的,这个Jquery脚本非常适合从数据库中获取查询并添加它们,但是我需要它比它更好地工作,而且我在互联网上搜索的时候运气不佳。

Php 改进我的即时搜索问题 好的,这个Jquery脚本非常适合从数据库中获取查询并添加它们,但是我需要它比它更好地工作,而且我在互联网上搜索的时候运气不佳。,php,jquery,search-engine,Php,Jquery,Search Engine,->我怎样才能使搜索不是基于单词中的任何字母,而是基于我输入的每个字母以及所有字母顺序完全相同的搜索 ->此外,我希望它不会在我键入内容时显示所有查询,而只在我开始键入内容后显示结果,以便它们更准确 ->最后一件事很抱歉,如果我在搜索栏中键入某个内容,然后将其删除,会留下一些随机查询?帮助 function searchq() { var searchTxt = $("input[name='search']").val(); if($.trim(searchTxt) !=

->我怎样才能使搜索不是基于单词中的任何字母,而是基于我输入的每个字母以及所有字母顺序完全相同的搜索

->此外,我希望它不会在我键入内容时显示所有查询,而只在我开始键入内容后显示结果,以便它们更准确

->最后一件事很抱歉,如果我在搜索栏中键入某个内容,然后将其删除,会留下一些随机查询?帮助

function searchq() {
var searchTxt = $("input[name='search']").val();
if($.trim(searchTxt) != '') {
$.post("search.php",{searchVal:searchTxt,}, function(output) {
            $("#output").html(output);
    });
    }
}



if(isset($_POST['searchVal'])) {
        $searchq = $_POST['searchVal'];
        $searchq = preg_replace("/[^A-Za-z0-9_\ -]/","",$searchq);
        
        $query = mysql_query("SELECT * FROM persons WHERE firstname LIKE '%$searchq%'  OR lastname LIKE '%$searchq%' ")  or die("Don't know why I could not search for you!");
        $count =  mysql_num_rows($query);
        if($count == 0) {
            $output = 'There Were NO Such Results!';
            
        }else {
                while($row = mysql_fetch_array($query)) {
                    $fname = $row['firstname'];
                    $lname = $row['lastname'];
                    $id = $row['id'];
                    
                    $output .= '<div id="queryresult"><p><a href="#"> '.$fname.' </p></div>';
                }
        }
        }
        echo ($output);

第一个问题似乎是矛盾的。我不知道该怎么说,我的意思是,我想让它根据我键入的每个字母进行搜索,以@Dagonthats搜索它当前的功能。键入a并运行查询:。。像“%a%”或像“%a%”这样的姓氏Dagon不,我的意思是,如果我在输入字段中键入字母[a],我不希望[hail]、[camping]和[Grateen]作为选择出现,我希望[Aardvark]、[American]和[Africa]出现。好吧,你想匹配第一个字母,将查询更改为:如“a%”只需从一开始删除通配符%