簡體   English   中英

Twitter Typeahead結果回顯到頁面,但未返回到搜索框PHP

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM