私が取り組んでいるクイック検索バーコードがあり、次のようになります。
searchbar.php:
<form method="post" action="search.php">
<input type="text" name="search" />
<input type="submit" />
</form>
search.php:
<?php
include("config.php");
$search = mysql_real_escape_string($_POST['search']);
$data = mysql_query("SELECT * FROM shop WHERE name LIKE '%$search%' OR id LIKE '%$search%' OR description LIKE '%$search%' OR keywords LIKE '%$search%' ORDER BY id DESC ") or die(mysql_error());
while ($info = mysql_fetch_array($data)) {
$name = stripslashes($info['name']);
$desc = stripslashes($info['description']);
Print "<h3><a href=\"result.php?product=".$name."\">".$name."</a>: <font color=\"#cd0000\">".$desc."</font></h3><br>";
}
echo $name;
?>
結果.php:
<?php
$result = $_GET['product'];
echo $result;
?>
私の質問は、私の検索でワイルドカードを使用することです。誰かが「foo bar」という 2 つの単語を検索したとします。私の考えでは、言葉は正確にその順序で並んでいる必要があり、何かが現れるには間にスペースが必要です。「foo」と「bar」という単語がどこかにある場合(隣り合っていなくても)、検索パラメータ内で結果が表示されるようにする方法はありますか?また、単語の順序が「bar foo」の順序で逆になっている場合にも機能するようにします(これも隣同士ではありません)。