環境:php+mysql
やりたいこと:
半角や全角スペースの入った複数の検索語を検索対象にしたいです。
例:りんご みかん で検索されたキーワード
現在のコードは以下のとおりです。。
長くなるので、検索結果数だけの処理までを書いてます。
$sql の箇所で for文など使って繰り返し処理をさせればよいのかと思い
google先生で検索しましたが、、どうにも該当しそうなサイトが見つからず
アドバイスいただきたく質問させていただきました。
単語1つの場合だけ検索結果が正しく動きますが、
現在は、検索フォームに「りんご みかん」と入れると 検索結果ゼロになります。
これはこれで正しいのですが、、
希望は「りんご みかん」と入れると りんごとみかんを含む検索をしてほしい
と考えてます。
<?php
$keywords = $_GET["key"];
//検索キーワードのデータが何件あるか?
$sql="select * from item where title like '%".$keywords."%' or Description like '%".$keywords."%' or category like '%".$keywords."%' ";
$datas = mysql_query($sql , $db );
$num = mysql_num_rows($datas);
echo "検索結果は "."<span style=\"font-size:30px;\">".$num."</span>"."件です。<br>";
}
?>
No.1ベストアンサー
- 回答日時:
No.3
- 回答日時:
こんな感じですね
<?PHP
if(isset($_GET["key"]) and $_GET["key"]!==""){
$sql="select count(*) as count from item where 0";
$pattern="/[ ]+/";
$keywords = preg_split($pattern,$_GET["key"]);
foreach($keywords as $val){
$val=mysql_real_escape_string($val);
$sql.=" or title like '%".$val."%'";
$sql.=" or Description like '%".$val."%'";
$sql.=" or category like '%".$val."%'";
}
$res=mysql_query($sql);
$data = mysql_fetch_array($res,MYSQL_ASSOC);
echo "検索結果は ".$data["count"]."件です。<br>";
}
?>
<form>
<input type="text" name="key">
<input type="submit" value="search!">
</form>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- Excel(エクセル) セルの値をグーグルで検索するエクセルVBAについて! 2 2022/08/01 21:41
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- Visual Basic(VBA) VBA初心者です 検索した数字の行に色をつける 5 2023/02/13 14:22
- その他(SNS・コミュニケーションサービス) Yahoo!とGoogle検索のしくみの違いを教えてください 2 2022/08/14 01:53
- Access(アクセス) Excel や Access のフォームの中でいわゆるインターネットの検索窓のようなものを構築できま 9 2022/05/21 12:39
- HTML・CSS Google検索も終わりですか? グーグル、検索エンジンに対話型AI搭載へ 2 2023/04/08 11:50
- その他(ブログ) ブログを始めたいと思うのですが、下記のような場合のおすすめブログサービスを教えてください。 収益化な 4 2023/04/10 10:01
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
検索時の選択内容を保持する方法
PHP
-
複数条件での検索について教えてください
PHP
-
HTMLでDBからデータを表形式で表示するには?
HTML・CSS
-
-
4
チェックボックスによる検索(複数チェックの場合)
PHP
-
5
php mysql で WHERE句内に変数を入れる方法を教えてください。
PHP
-
6
PHP ボタンが押されたら処理を実行する
PHP
-
7
phpとmysqlで「あいまい検索」をしたいです。
PHP
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<VB.NET>INSERT文でDBにデータ...
-
Pro*Cの構文エラー
-
phpのupdate,sql文にて連番カラ...
-
CakePHPでquery()を使うときに...
-
php postgres Insert と updat...
-
PHPのUndefined index や varia...
-
配列をループさせてUPDATE
-
VBA ACCESS SQL...
-
insert1つの処理でもトランザ...
-
C#でDBの特定列をUpdate
-
ResultSetインターフェイスでの...
-
実行時エラー3131 FROM 句の構...
-
MySQLでデータベースにデータin...
-
VBAをつかってクエリの情報を抽...
-
PHPで[]の使い方について
-
while文の中にwhile文を書きた...
-
stringaddslashes 半角¥が消える
-
テーブルに入っているデータと...
-
SQL文が実行できません
-
テキストボックスに入れた内容...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JAVA SQLServerException 列名 ...
-
insert1つの処理でもトランザ...
-
Pro*Cの構文エラー
-
<VB.NET>INSERT文でDBにデータ...
-
データベースに存在するデータ...
-
ResultSetインターフェイスでの...
-
C# で発生したException.Messag...
-
Q&Aサイトを作成していてURLの...
-
VBA ACCESS SQL...
-
MySQLのINSERT時にたまに重複に...
-
INSERT,DELETEを同時に
-
【初歩】配列の格納データ数だ...
-
PHP&MySQLでの文字列+数列の一...
-
php postgres Insert と updat...
-
VB.NET エラーになる箇...
-
OR検索を実装したい
-
PHP初心者です。syntax error, ...
-
mysqliを使ってデータベースを...
-
like検索の複数キーワードで、...
-
CakePHPとMySqlを使用していま...
おすすめ情報