Php 引导自动完成(typeahead)不起作用
我正在尝试制作一个自动完成的文本框,它使用Bootstrap的typeahead函数。我已经通过javascript中的数组进行了测试,手动输入。然而,我尝试添加代码,允许autocomplete使用mysql数据库中的数据,但我无法实现这一点。我能做些什么来修复这个问题,以便autocomplete显示MySQL数据库中的建议单词 HTML(test2.HTML)Php 引导自动完成(typeahead)不起作用,php,mysql,twitter-bootstrap,bootstrap-typeahead,Php,Mysql,Twitter Bootstrap,Bootstrap Typeahead,我正在尝试制作一个自动完成的文本框,它使用Bootstrap的typeahead函数。我已经通过javascript中的数组进行了测试,手动输入。然而,我尝试添加代码,允许autocomplete使用mysql数据库中的数据,但我无法实现这一点。我能做些什么来修复这个问题,以便autocomplete显示MySQL数据库中的建议单词 HTML(test2.HTML) $('#typeahead')。typeahead({ 来源:函数(提前输入,查询){ $.ajax({ url:'source
$('#typeahead')。typeahead({
来源:函数(提前输入,查询){
$.ajax({
url:'source.php',
键入:“POST”,
数据:“查询=”+query,
数据类型:“JSON”,
异步:“false”,
成功:功能(数据){
进程(数据);
}
});
}
});
PHP(source.PHP)
错误在代码的下一部分:
json\u cnode($array)
它应该说:
echo json_encode($array)代码>错误是什么。。。你得到了什么。。。有什么问题吗。。。你调试了吗?json_cnode($array)。。非json_编码[$array]。。。这应该是在那里抛出一个错误,但至少仍然不起作用。问题是当我输入时什么也没有发生(也就是自动建议没有激活),所以我不知道问题的根源。我知道mysql查询确实有效,所以这不是问题所在。你检查过错误日志了吗?你的代码容易受到SQL注入的攻击。你应该继续读下去。
<div class="well">
<input type="text" class="span3" id="typeahead" data-provide="typeahead" data-items="4" />
</div>
<script>
$('#typeahead').typeahead({
source: function(typeahead, query){
$.ajax({
url: 'source.php',
type: 'POST',
data: 'query=' + query,
dataType: 'JSON',
async: 'false',
success: function(data){
typeahead.process(data);
}
});
}
});
</script>
<?php
include 'connect.php'; // connects to database
if (isset($_POST['query'])) {
$query = $_POST['query'];
$mysql_query = mysql_query("SELECT * FROM country WHERE country LIKE '%{$query}%'");
while ($row = mysql_fetch_assoc($mysql_query)) {
$array[] = $row['name'];
}
json_cnode($array)
}