[英]Twitter Typeahead results echoing to page but not returning to the search box PHP
我正在與Twitter Typeahead一起搜索數據庫中的用戶。 我希望它在輸入時顯示最接近其查詢的結果。 我在后端使用PHP。
如果將查詢手動添加到url的末尾,我有想要回顯到頁面的結果,我可以在Chrome編輯器的“網絡”標簽中看到,當我鍵入查詢時,它正在發送帶有查詢的請求打字。 不幸的是,預先輸入搜索框永遠不會填充結果。
這是搜索框的html:
<div class="row margin-top">
<div class="small-12 large-2 columns">
<input type="text" name="typeahead" class="search typeahead tt-query" autocomplete="off" spellcheck="false" placeholder="Search Here">
<input type="submit" class="button">
</div>
</div>
<!-- JAVASCRIPTS -->
<script src="/js/typeahead.min.js"></script>
<script src="/js/search.js"></script>
這是我的search.js:
$(document).ready(function(){
$('input.typeahead').typeahead({
name: 'typeahead',
remote: {
url : '/admin?query=%QUERY'
},
limit: 1
});
});
這是php中的搜索功能:
function user_search($key)
{
$link = open_database_connection();
$array = array();
$sql = "SELECT name FROM users WHERE name LIKE '%{$key}%'";
$stmt = $link->prepare($sql);
//Execute
$stmt->execute();
foreach ($stmt->fetchAll(PDO::FETCH_COLUMN) as $row) {
$array[] = $row;
}
return json_encode($array);
}
如果我更改return json_encode($array);
最后一行,則return json_encode($array);
echo json_encode($array);
如果我手動將查詢添加到url,它將在頁面上回顯正確的結果。 但是當我歸還它們時,什么也沒有發生。
函數中的return
語句將值返回給調用方。 顯然, echo
將其發送到頁面。 因此,在user_search
地方執行echo
或您想要執行的任何操作。
echo user_search()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.