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%”只需从一开始删除通配符%