• ベストアンサー

検索条件で絞込みの方法を教えて下さい。

amountainblastの回答

回答No.1

こんにちは。 GETで値を取得するのですから、後はその値を見て検索条件があれば、Where句に追加していけばいいだけです。 GETで取得するパラメータ 市町村,企業,条件,時給 と検索条件変数 $jouken="";(検索条件には初期でnullを代入) あとはパラメータの値を見て、 if(isset(市町村) and 市町村 != ""){  if($jouken == ""){   $jouken = "WHERE 市町村テーブル = 市町村";  }else{   $jouken .= " AND 市町村テーブル = 市町村";  } } ってな感じですべてのパラメータに対して同じ処理をすればOKです。 処理のイメージは 1、パラメータ市町村の値があれば、検索条件に加える。 2、$joukenがnull 検索条件が何もなければ、 新しく条件の追加、 すでに条件があれば、 andで条件の追加 をしています。 簡単ですみませんが、大体の考え方がわかるかと思いますので、後はがんばってください。

nicolemen
質問者

お礼

そうそうに御指導を頂き、ありがとうございます。 なぜか、シンクタンクエラー'{'となってしまいます。 原因を考えたりしていて返信が遅くなりました。 ただ発想の仕方はなんとなく理解できたので、 ただ今チャレンジ中です。 ありがとうございます。

関連するQ&A

  • SQLでの絞り込み検索

    はじめて参加します。 SQL初心者の古屋と申します。 絞り込み検索をしたいのですが、先に進まず困っています。 どうぞアドバイスをよろしくお願いします。 あるテーブルから1回目の検索条件でヒットしたものを表示させる。 次に、その中から2回目の検索条件を入力して、結果を表示させる。 (ポイントは、一度検索した結果を出してから、次の検索条件を入力させたい) この絞り込みを何回でもやりたいのです。 一時テーブルも試したのですが、検索する回数分一時テーブルが必要になるのではだめだと思い、 断念しました。 テーブル値関数を使ったら良さそうだと思ったのですが、能力不足のため先に進まず困っています。 どうかアドバイスをよろしくお願いします。 環境は、Windows 2000 Serverで、SQL Server 2000を使用しています。

  • 複数の条件での絞り込み検索の仕方

    PostgreSQLで複数の条件での絞り込み検索をしたいのです。 テーブルには 発売日、商品名、入荷日 があります。 例えば 発売日が2007年5月1日から5月5日で、商品名に「○○」もしくは「××」もしくは「△△」が含まれており、入荷日が一番新しいもの という条件で検索したいのです。 発売日だけの絞込みならBetweenですし、商品名だけならor、入荷日の最新だったらmaxを使えば個別には検索できるのですが、これをまとめて一行でやるにはどうしたらよいのかわかりません。 それぞれでandでつなげてみましたが、orの条件がうまく反映されず、一個目の○○だけが検索に引っかかってる状態です。 ××や△△もひっかかるようにするにはどう記述したらよいのでしょうか。

  • 複数の条件での絞り込み検索の仕方

    My SQLで複数の条件での絞り込み検索をしたいのです。 TABLEAのSHOHINCDという項目をキーにして、 TABLEBにて上記で抽出したSHOHINCDを LIKE IN で抽出したいのですがどう記述したらよいのでしょうか。 初歩的な質問ではありますが、宜しくお願い致します。

  • データベースからの絞り込み検索とCF作成

    MSアクセス2013で作成したデータベースがあります。 データベースのカラムには、複数のチェックボックスが含まれています。 絞り込み検索では、レコードのチェックボックスに1つでもチェックが入っている項目を除外したのち、 残ったレコードの”製品名”カラムを抽出したいと思っています。 テーブルはあるのですが、アクセスを利用した経験がほとんどなく、 コントロールフォームの作成方法や検索で該当したカラムのみを抽出する方法がわかりません。 ご指導頂けないでしょうか よろしくお願いします。

  • 検索結果に対する絞込み

    お世話になってます。 検索条件で絞り込んだ結果に対して、さらに絞込みをかける方法を教えてください。 検索条件を持ち歩いてもいいのですが、30個近くあるのでセッションを使うことにしたのですが、うまくいきません。 具体的には ID 名前 住所 地区 1 山田 東京 関東  2 佐々木 東京 関東 3 鈴木 埼玉 関東 4 岡田 大阪  関西 最初に「関東」を検索条件に検索すると表示画面に3件表示されます。 セッションテスト1($_SESSION["test1"])には検索後の3件のIDを登録しました。 次に表示画面には検索条件のテキストフィールドがあり、「東京」と入力すると2件表示されます。 具体的にはセッションテスト1に値がセットされていれば $kensaku=$_SESSION["test1"]; $sql="SELECT *from test1 where ID=$kensaku and 住所=東京"; としています。 ここまでは絞込みがうまくいき表示できたのですが 戻るボタンで戻ったとき、「埼玉」といれて検索をかけると、1件表示させたいのですが $_SESSION["test1"]に値がセットされていて、 先ほど「東京」で絞り込んだ結果に検索をかけているので、表示されません。 不動産などのサイトを見るとパラメーターで渡しているのですが、セッションを使う方法ではできませんでしょうか。 わかりにくい文章で申し訳ないのですが、 検索結果に対して、さらに検索を何度もかけるという方法を教えていただければ助かります。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 条件検索をしたいのですが(FileMakerPro7で)

    FileMakerPro7を使用して、医療用の所見を書くフォームを構築(元々あったものをカスタマイズ)しているところなのですが、お尋ねしたいのはスクリプトの編集方法なのです。 例えば、検査日・検査種類・ID番号・患者名・担当医師・所見・診断etcが1レコードとします。 そのレコードがどんどん増えてくると、絞り込み検索をしたいと思うようになりますが、確かにこのFileMakerだと「検索モード」というのがありますので、そこを使えば絞込み検索は可能となります。 しかし、レイアウト画面内で「絞込み検索実行ボタン」をつくり、その画面内で検索をしたいのです。 この際にどのようなスクリプトを作成すれば適切なものとなるか教えていただきたいのです。 画面そのものは、入力フォームの画面(Web入力画面もあります)と、それらレコードを一覧化した画面(印刷レポート一覧、という表現の画面にしています)の大きく分けて3つあります。使いたいのは、このレコードを一覧化した画面内で抽出検索をしたいのです。 例えば、検査種類・検査部位・担当医師の3つを上記のレコード内の項目から条件抽出した上での検索をしたいのです。そのスクリプトを知りたいんです・・・。 それぞれの項目についてテーブルは作成しています。 まだまだリレーションがよく理解できていない部分もあります。(汗) まだほんの最近触り始めたばかりなので、どのように質問を書き込めばよいのかさえ分かっていないのですが、用語の理解はある程度できますので、回答にご協力いただく方にお願いですが、「これこれの○○の情報は△△ですか?」と聞いていただけると助かります。 すみません・・・。どなたか見捨てずに教えてください。宜しくお願いします。

  • Mysql 絞り込み検索

    絞り込み検索を実装したいのですがうまくいきません。 ご教授していただければ幸いです。 データは次のとおりです。 テーブル名 「zyoho」 カラム  cityid :tenki_id :kansou 1:1:あつい 2:2:乾燥してる 1:2:乾燥してる 3:3:寒い 以上をセレクトボックスにて絞り込み 「kansou」のデータをだしたいのいです。 一つ目のセレクトボックス ・東京 :cityid 1 ・大阪:cityid 2 ・熊本:cityid 3 二つ目のセレクトボックス ・晴れ:tenki_id1 ・雨:tenki_id2 ・雪:tenki_id3 ・何も選択しなかったらすべて表示。 ・例えば東京だけ選ぶと あつい 乾燥してるの二つのデータ結果。 ・天気だけを選ぶと出てくるいくつかのデータ結果。 ・県、天気を選ぶと絞り込まれたデータ結果。 このように絞り込みたいのですがご教授いただければ幸いです。 お願いいたします。

    • ベストアンサー
    • MySQL
  • 検索条件について

    以下の項目があります。 CD_NAME NUMBER(6) 値:必ず5桁以上は入っています。 上記項目の値に対して5桁目と6桁目が'11'のレコードを取得したい場合にはどういった条件になるのでしょうか? (説明が下手ですいません。) □□□□□□ ↑↑ 5桁目と6桁目の例 12345 →1 123456→12

  • ACCESSのフォームで、絞込み検索すると重複したレコードが増えてしま

    ACCESSのフォームで、絞込み検索すると重複したレコードが増えてしまいます。 ACCESSのフォームで、コンボボックスを6ほど設置し、条件を絞り込んでデータを抽出するシステムを作成しました。 抽出自体は問題なく出来ているのですが、再クエリを実行した時、同じ抽出条件と結果が複数レコード表示されてしまいます。 調査した結果、フォームプロパティのレコードソースに設定していますクエリの実行結果の件数と同じ件数分増えてしまうようです。 そして、そのフォームをしばらく使用していますと、「これ以上テーブルを開くことができません。」とのメッセージが出てしまいます。 これも何か関係しているのでしょうか? いろいろと調べてみましたが、解決する事ができませんでした。ご指導、宜しくお願いします。

  • PHPのセッション変数 絞り込み検索

    PHP Version 5.1.6 flash actionscript2.0 最初の検索条件をセッション変数['first']に保存し、 (GETにより、種別を判断しています。 ~~/index.php?kind=A&value=1という形) 絞込検索時(値はページ内のチェックボックスからPOSTで受け取り、hiddenタグで、type=newを受け取ります。)に 最初の検索条件をセッション変数['first']から取り出すようにしています。 また絞り込み検索時でなければ、とりあえずいったん保存用の セッション変数['first']を初期化しています。 ここで、ページ内にフラッシュのNEWというボタンがあり、その中に var kind = "new"; get_URL("http://~~/index.php", "_blank","GET"); とだけ記述して、ページへkind=newという検索種別を渡すように しているのですが、挙動がおかしくなる場合があります。 [正常な動きをする場合] 1、ページ内のNEWのフラッシュボタンを押す。 予想通りの最初の検索ができる。 (この時点で、セッション変数['first']に"new"が入っているのは 確認済みです。) 2、ページ内のチェックボックスで、絞込み検索をかける。 予想通り、最初の検索条件+絞り込み条件を加えた検索ができる。 [異常な動きをする場合] 1、ページ内のリンクから最初の検索をする。 (~/index.php?kind=A&value=1)を押す。 (この時点で、セッション変数['first']に"A"が入っているのは 確認済みです。) 2、ページ内のチェックボックスで、絞込み検索をかける。 予想通り、最初の検索条件+絞り込み条件を加えた検索ができる。 3、ページ内のフラッシュのNEWボタンを押す。 予想通り、再度別条件での検索ができる。 4、ページ内のチェックボックスで、絞込み検索をかける。 なぜか、セッション変数['first']に、"A"が入ったままになっている。 よって、2の検索に変わってしまう。 ただし、このフラッシュボタンからではなく、たとえば ~/index.php?kind=new というGETで送るタイプのリンクからでは、予想通りの動きをします。 このあたりの挙動につきまして、ご教授いただければ幸いです。 下記コードです。(処理に関係ない部分は省略しております。) session_start(); session_register("first"); //パラメータを受ける。 //絞込検索でなければ、セッション変数を初期化 if($_REQUEST['kind'] != "more") { unset($_SESSION['first']; } switch($_REQUEST['kind']){ case "A": $_SESSION['first']= "A"; break; case "new": $_SESSION['first']= "new"; break; //絞込み検索 case "more": break; }

    • 締切済み
    • PHP