0
我有一些问题,我无法确定。我已经编写了使用Type-ahead来获取自动完成搜索系统的功能。Typeahead Bootstrap在本地但不在生产服务器上工作
该功能在localhost机器上完美工作,但当它上传到服务器时,该功能被破坏。
这是我提前输入语法:
<script>
$(document).ready(function(){
$('#q').typeahead({
source: function(query, process){
$.ajax({
url:'autosearch.php',
type:'POST',
data:'query=' + query,
dataType: 'JSON',
async: true,
success:function(data){
process(data);
}
});
}
})
});
</script>
它得到文本输入(以下HTML)值
<form method="GET" action="search.php" class="form-inline pull-right">
<input name="q" id="q" class="span5" type="text" placeholder="search" data-provide="typeahead" autocomplete="off">
<button type="submit" class="btn btn-primary"> <i class="icon-search icon-white"></i></button>
</form>
有什么不对这个功能呢?
感谢
UPDATE
从萤火得到结果后,它显示了PHP文件时发生的错误
注意:未定义指数:●在C:\ XAMPP \ htdocs中\ kbase \ panel \ autosearch.php on line 5
php代码是这样的:
<?php
require_once "configuration.php";
$q = mysql_real_escape_string(strtolower($_GET['q']));
$sql = "SELECT DISTINCT title as title FROM ** WHERE title LIKE '%" . $q ."%'";
$rsd = mysql_query($sql);
$cname = array();
while ($rs = mysql_fetch_assoc($rsd))
{
$cname[] = $rs['title'];
}
echo json_encode($cname);
?>
是的,谢谢pickypg,我只有jquery的查询命名为q。我只是从GET添加一些isset,尝试将其更改为POST方法 – randytan
如果您希望它成为POST请求,那么将$ _GET改为$ _POST并将type设置为POST '在Ajax调用中。 – pickypg