0

私は、自分のサイトにとって単純なものである Like 検索エンジンを作ろうとしています。私が使用しているコードは次のとおりです。

  $sql = mysql_query("SELECT * FROM books WHERE tags LIKE '%$_GET[term]%' LIMIT 0,$_GET
  [results]");

while($ser = mysql_fetch_array($sql)) {
    echo $ser['title']."<br />";


}

しかし、検索すると、タグ内の単一の用語のみが検索されます。すべてのタグを検索する方法について何か良いアイデアはありますか?

4

3 に答える 3

0

SQLインジェクションから身を守るために、ユーザーが最初に解析した値を直接使用しないことを強くお勧めします

制限を削除してみて、同じ結果が得られるかどうかを確認してください。

于 2013-05-29T17:45:11.267 に答える
0
$sql = mysql_query("SELECT * FROM books WHERE tags LIKE '%$_GET[term]%'");

クエリから制限を削除すると、一致するすべての行がクエリから取得されます。

于 2013-05-29T17:41:22.333 に答える
0

これを使って:-

$keywords =$_GET[term];
$keywords = explode('delimiter', $keyword);
$searchTermKeywords = array();
foreach ($keywords as $word) 
{

$searchTermKeywords[] = "tags LIKE '%$word%'";

}

$result= mysql_query("SELECT * FROM books WHERE ".implode(' AND ', $searchTermKeywords).");
于 2013-05-29T17:46:15.313 に答える