※ ChatGPTを利用し、要約された質問です(原文:【続】PHPのsqlでキーワード検索【急】)
PHPのsqlでキーワード検索
このQ&Aのポイント
データベースからデータを表示するPHPの「list.php」と検索してlist.phpに渡す「top.php」について質問です。
地域指定とエリア指定がない場合に、キーワード検索のみにする方法について知りたいです。
地域指定とエリア指定を削除するとキーワード検索が働かなくなりますが、どのように修正すればよいのでしょうか。
前回、前々回の質問で解決しなかったので質問を変えて改めて質問させて下さい。
※php、データベース共に初心者ですので専門用語での指摘には対応出来ませんので宜しくお願いします。
前々回http://oshiete1.goo.ne.jp/qa3220932.html
前回http://oshiete1.goo.ne.jp/qa3234825.html
データベースからデータを表示するPHP、「list.php」と
検索してlist.phpに渡す「top.php」があります。
現在list.phpに
if($fn == "sr"){//サーチ
$mainimage="navisearch.jpg";
$table_tmp = "";
$query_tmp = "";
if($munic != 9999){//地域指定があるとき
if($munic == 1){//1の時
if($area != 9999){ //1でエリア指定があるとき
$table_tmp = ",Town_table";
$query_tmp ="and To_id = St_town and To_area = ".$area;
}else{//1でエリア指定が無いとき
$query_tmp ="and St_munic = ".$munic;
}
}else{//1以外の時
$query_tmp ="and St_munic = ".$munic;
}
}
if($lowcat > 0){
$query_tmp .= " and Li_id = ".$lowcat;
}
if(strlen($key) > 0){
$query_tmp .= " and (St_mainname like ?"%".addslashes($key)."%?" or St_subname like ?"%".addslashes($key)."%?" or St_freeheadtxt like ?"%".addslashes($key)."%?" or St_freetxt like ?"%".addslashes($key)."%?" or St_movietxt like ?"%".addslashes($key)."%?")";
}
…
というphpがあり、地域検索、エリア検索、キーワード検索が出来るようになっています。
これを地域指定、エリア指定両方無い時も
地域指定1、エリア指定9999とするように出来ないでしょうか?
理想は地域、エリア検索がなくキーワード検索のみにしたいのですが、地域、エリア検索部分のphpを消すとキーワード検索が働かなくなります。
(エラーは出なくなりましたがキーワードを無視し、データベース全てのデータを返して来る状態です)
すぐに回答欲しいです。
宜しくお願い致します。
お礼
お礼が遅くなり申し訳ございませんでした。 おかげさまで無事キーワード検索が動きました! 助かりました。ありがとうございました。