1

もちろんロードされたデータベース。get 用語はオートコンプリート文字列であり、データベースの groupname の下にありますが、ご覧のとおり、一致しない場合は、if の最初の部分を実行したくありません。問題は、get term 部分を実際の文字列に置き換えると機能し、データベースに存在しない文字列を追加しても魅力的に機能することです。しかし、get term が完了すると、文字列が見つかるかどうかは問題ではなく、とにかく numrows は 0 よりも大きくなります。なんで?= と LIKE も試しました ofc

$query = "select * from `gamegroups` where `groupname` = '%{$_GET['term']}%'";

$resultset = mysql_query($query);

if (mysql_num_rows($resultset) > 0 ){

$lolz = array();

while( $row = mysql_fetch_assoc($resultset) ) {
    $lolz[] = $row['gameid'];
}
echo json_encode($lolz);
            }else{print "no match debug";}
?>
4

1 に答える 1

0
$query =  "select * from gamegroups where groupname LIKE '%" . mysql_real_escape_string($_GET['term']) . "%' LIMIT 1";

ワイルドカードのため、同様の結果が必要だと思いますか?

あなたが本当に望むのは、関連性スコアを作成し、関連性によって並べ替えられた結果を返すことですが、それはこの質問の範囲外です。

于 2012-07-08T13:33:33.053 に答える