0

ユーザーがキーワードを入力すると、それらのクエリに一致するデータベース内のユーザーを表示する単純な検索クエリ スクリプトがあります。

現時点では、ユーザーは一度に 1 つのクエリでしか検索できませんが、ユーザーが複数のクエリを検索できるようにこのスクリプトを修正する方法を知りたかったので、白人の英国人男性と入力すると、すべてのユーザーが白人としてリストされます。 、英国人および男性。または、ウェールズの 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))

    {
4

2 に答える 2

0

andあなたのSQLがうまく見えることを除いて、そこには余分なものがあります。あなたが消毒していることを願っていますが$query

検索で正確に何をしようとしているかに応じて、OR使用するかどうかを検討することをお勧めします。AND検索対象の列のみを含めるように SQL 文字列を作成することもほぼ確実です。元:

if( isset($query_age) ) {
    $sql_string .= " OR age LIKE '%".$query_age."%'";
}
etc...
于 2013-01-02T00:54:32.190 に答える
0

PHP ページへのクライアント側の Ajax 呼び出しを実装して、データベース クエリを作成し、クライアントに XML または JSON の回答を返すことができます。次に、クライアントをローカルで更新します。

于 2013-01-02T00:56:35.417 に答える