簡體   English   中英

MySQL中的多個搜索查詢?

[英]multiple search queries in mysql?

我有一個簡單的搜索查詢腳本,當用戶輸入關鍵字時,它會在數據庫中調出與那些查詢匹配的任何用戶。

目前,一個用戶一次只能搜索一個查詢,但我想知道如何修改此腳本,以便一個用戶可以搜索多個查詢,因此,如果他們輸入白人英國男性,則所有用戶都將列為白人,英國人和男性。 或者,如果他們搜索威爾士40歲以上的女性,那么就會獲得所有威爾士40歲以上女性的用戶。

$query_for_result=mysql_query("SELECT *
                            FROM ptb_stats
                            WHERE display_name like '%".$query."%' OR and location LIKE '%".$query."%' OR age LIKE '%".$query."%' OR nationality LIKE '%".$query."%' OR hobbies LIKE '%".$query."%' OR ethnicity LIKE '%".$query."%' OR local_station LIKE '%".$query."%' LIMIT 5");
    echo "<div class=\"search-results\">";
    while($data_fetch=mysql_fetch_array($query_for_result))

    {

你有一個額外的and比你的SQL看起來很好在那里,等。 雖然我確實希望您正在清理$query

您可能要考慮要使用OR還是AND這取決於您要對搜索執行的操作。 幾乎可以肯定,您還希望構建SQL字符串以僅包含要搜索的列。 例如:

if( isset($query_age) ) {
    $sql_string .= " OR age LIKE '%".$query_age."%'";
}
etc...

您可以實現對PHP頁面的客戶端Ajax調用,這將依次進行數據庫查詢並向客戶端返回XML或JSON答案。 然后,您在本地更新客戶端。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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