• ベストアンサー

スペース区切り

picchioの回答

  • picchio
  • ベストアンサー率100% (2/2)
回答No.7

>shuppan11= Request.QueryString("shuppan1") >shuppan2= Request.QueryString("shuppan1") Request.QueryStringで受け取ることが出来るのは,フォームからgetで送られた値です. postならRequest.Formになります. 入力フォームの出版年を入れるところが <input name="shuppan1" type="text">以降 <input name="shuppan2" type="text">以前 のようになっているとして shuppan1 = Request.QueryString("shuppan1") shuppan2 = Request.QueryString("shuppan2") で受け取れます. 偶然にもデータベース側の出版年がshuppan1と言う名前なのでしたら shuppan11 = Request.QueryString("shuppan1") shuppan2 = Request.QueryString("shuppan2") としても良いですが,入力フォーム側の名前がどうなっているのか確認してください.

tanaba
質問者

補足

入力フォーム側の名前とは <input name="shuppan1" type="text">以降 <input name="shuppan2" type="text">以前 のことでよろしいですよね?

関連するQ&A

  • 検索ワードを(1)クリアされないようにしたい、(2) スペース区切りしたい

    ◆ 環境: PHP 5.0.3 MySQL 4.0.14b(Win)(←古いこと承知) IIS 5.1 ◆ 背景 質問 No.1212008にも書きましたが、PHP+MySQLで簡単な検索システムを 作っている初心者です。 ・001.htm に設置したこの検索フォームからPOSTすると ・002.php に渡され、これがHTMLを組み立てて検索結果を表示します。 ・002.php には、001.htmと同じ検索フォームを設置してあります。 ・検索フォームは name="1" ~ "4" までのテキストフィールドと検索ボタンで、  次のようなSQL文でWHERE文を構成しています。 $sql = "select * from t_url where (fullpass like '%$title1%')"; if (strlen($title2) > 0) { $sql .= " and (fullpass like '%$title2%')"; } if (strlen($title3) > 0) { $sql .= " and (fullpass like '%$title3%')"; } if (strlen($title4) > 0) { $sql .= " and (fullpass like '%$title4%')"; } ◆ 質問は2点です。 (1) 001.htmから検索し、002.php結果がリストアップされると、 002.phpにある検索フォームに入力したキーワードはが当然クリアされています。 また、002.php から再検索しても、同じくクリアされてしまいます。 いずれの場合にも、テキストフィールドに入力した内容を残す(引き継ぐ)ことは 可能でしょうか?PHPとかJavascriptとかで実現方法はあるのかもしれませんが ちょっと見当がつきません。 (2)今は1フォーム・1キーワード×4テキストフィールドなので4ワードまでは AND条件で絞り込みできますが、 Web検索ライクに、検索フォームのテキストは1つ、全角&半角スペースで区切った キーワードがAND条件でつながるようにするのも敷居高いでしょうか。 アドホックな感じがするので、何とかできたらと思うのですが。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • 1つのテキストボックスに入力された複数のキーワードで検索する方法

    開発言語はASPで、DBはSQL Serverを使用して、 現在プログラムの勉強をしております。 Search.aspというファイルで、 1つのテキストボックスに、 例えば、 佐藤 鈴木 のように入力し、 複数のキーワードで OR 検索をしたいのですが。 現在は下記のようなSQLを書いているのですが、 1つのキーワードでしか検索できませんので、 複数のキーワードで検索できるようにするには、 どのようにSQL及び、プログラムを記述したら良いのでしょうか。 dim name name = Request("name") sql = "select * from TABLE " sql = sql & "WHERE id <> 0 " if name <> "" then sql = sql & " AND (name LIKE '%" & name & "%') end if よろしくお願いいたします。

  • スペース区切りによるAND検索をSQL文だけで実現したい

    スペース区切りによるAND検索をSQL文だけで実現したい いわゆるWeb検索等で利用するスペース区切りでのAND検索を SQL Serverでも実現可能かどうかを調べています。 結合に使用するため、プログラムからSQLを組み立てる事が出来ません。 なお、検索したい対象は一時テーブル内の小数データなので、パフォーマンスは特に問題は有りません。 ただし、一時テーブルなのでCONTAINS等を使用する事が出来ません。 せめて一時テーブルに対するフルテキスト検索が出来れば問題ないのですが、、、 以上、よろしくお願いします。

  • スペース区切りの検索について

    現在PHP+CSVで簡易検索を作りましたが この度それをMYSQLで実現させようかと考えていますが 以前のような単純なCSV検索と同様の事が MYSQLのwhere句の部分で表現できなく困っています。 ■data.csv 鈴木一郎,野球選手,東京都新宿区 鈴木次郎,サッカー選手,東京都新宿区 検索方法(andで絞込み) キーワードを何も入れなければ全件出力。 たとえば検索キーとして 「鈴木」 「野球」と入れれば1行目が表示されるイメージです。 ■PHP+CSV $ArrKeyword=explode(" ",$KeyWord); $Data=file("data.csv"); for ($i = 0; $i < sizeof($Data); $i++) { for ($n = 0, $flag = 1; $n < sizeof($ArrKeyword); $n++) { if (!mb_eregi($ArrKeyword[$n], $Data[$i])){ $flag = 0; break; } } if ($flag) { $kensaku_kekka[] = $Data[$i]; } } ■MYSQL $ArrKeyword=explode(" ",$KeyWord); $where = " WHERE concat(name,com,jyusho) Like '%$ArrKeyword[0]%' "; if($ArrKeyword[1]){ for($i = 1; $i < sizeof($ArrKeyword); $i++) { $where .= "AND (concat(name,com,jyusho) like '%$ArrKeyword[i]%' )"; } } $sql = "SELECT * FROM `keigyou_tbl` $where"; //select文を実行 if(!$res=mysql_query("$sql")){ echo "sql失敗"; exit; } ■MYSQL版の場合2個目のキーワードが機能していません。

    • ベストアンサー
    • MySQL
  • 複数ワード検索(PHP)の区切り文字について

    PHP初心者です。 データベースの検索処理を実装しようとしています。 一般の検索エンジンのように、半角スペース、全角スペース、どちらも区切り文字として認識させて、スペースで区切った複数ワードによる検索抽出ができるようにしたいのです。 データベース例) 青山病院 伊藤病院 井上病院 青山歯科 鈴木歯科 「青山 井上」(全角スペース)と検索しても、「青山 井上」(半角スペース)と検索しても、 青山病院 井上病院 青山歯科 という検索結果にしたい。 実際にコードをかいてみたのが以下です。 $searchwords = "青山 井上"; //全角スペース $array_searchwords = mb_split("[  ]", $searchwords); ////[  ]には全角スペース $sql = "SELECT hospitalname FROM hospital"; foreach( $es_array_searchword as $k => $v ) { # 1ワード毎のカッコ区切り(開始)  if( $k == 0 ) {   $sql .= " WHERE (";  } else {   $sql .= " OR (";  }  $sql .= " hospitalname LIKE '%${v}%'";  $sql .= " ) ";  echo $sql; } このようにかくと、$sqlは、 「SELECT hospitalname FROM hospital WHERE ( hospitalname LIKE '%青山%' ) OR ( hospitalname LIKE '%%' ) OR ( hospitalname LIKE '%井上%' )」 と出力されます。 要するに、$searchwords = "青山 井上";、の「全角スペース」が文字として認識されてしまいます。 これを、 「SELECT hospitalname FROM hospital WHERE ( hospitalname LIKE '%青山%' ) OR ( hospitalname LIKE '%井上%' )」 というsql文で実行できるようにしたいのです。 $array_searchwords = mb_split("[  ]", $searchwords); の[  ]の書き方が問題になるのかなと思いますが、全角スペース区切りを生かすには、どうかけばよろしいでしょうか?

    • ベストアンサー
    • PHP
  • 1つのテキストボックスで全フィールドを検索するには

    1つのテキストボックスで全フィールドを検索するには Access2002使用です。 現在フォームにて、それぞれのフィールド毎に検索用のテキストボックスを用意してる為、 下記のようになっています。 これを、1つのテキストボックスで全てのフィールドを検索できるようにするには、 どこを訂正したらよろしいでしょうか? 宜しくお願い致します。 Option Compare Database Function exeFilter() Dim strFilter As String If Not IsNull(姓検索) Then strFilter = " AND 姓 Like '*" & Me.姓検索 & "*'" End If If Not IsNull(名検索) Then strFilter = strFilter & " AND 名 Like '*" & Me.名検索 & "*'" End If If Not IsNull(姓ふりがな検索) Then strFilter = strFilter & " AND ふりがな(姓) Like '*" & Me.姓ふりがな検索 & "*'" End If If Not IsNull(名ふりがな検索) Then strFilter = strFilter & " AND ふりがな(名) Like '*" & Me.名ふりがな検索 & "*'" End If If Not IsNull(住所1検索) Then strFilter = strFilter & " AND 住所1 Like '*" & Me.住所1検索 & "*'" End If If Not IsNull(住所2検索) Then strFilter = strFilter & " AND 住所2 Like '*" & Me.住所2検索 & "*'" End If If Not IsNull(住所1ふりがな検索) Then strFilter = strFilter & " AND 住所1ふりがな Like '*" & Me.住所1ふりがな検索 & "*'" End If If Not IsNull(住所2ふりがな検索) Then strFilter = strFilter & " AND 住所2ふりがな Like '*" & Me.住所2ふりがな検索 & "*'" End If Me.Filter = Mid(strFilter, 6) Me.FilterOn = True End Function Private Sub Form_AfterUpdate() End Sub

  • スペース区切りのテキストファイルをExcelで開く

    テキストファイルをExcelファイルとして読み込む必要が多いです 毎回Excelの 開く を使ってテキストファイルを開くのは面倒なので、右クリックの 送る にExcelの実行ファイルをコピーしてそこに送っています ただ、この方式だとスペース区切りで改列出来ず、タブと改行(エンターキー)のみ反映したファイルが開きます 最初からスペース区切りも列区切りにした形でテキストファイルを開く方法(Excelの 開く を使わずに)はないでしょうか

  • 複数キーワードを複数カラムに照会するSQL文?

    頭の整理ができないので技術的なこともさることながら、SQL構築の考え方もうかがいたいのですが、 以下のテーブルに対して、スペース区切りで複数キーワードをAND条件で結ぶとして ID MyCol1 MyCol2 -------------------------- 1 いちご みかんジュース 2 ぶどう いちごみるく 3 みかん すいかジュース 4 すいか めろんソーダ 5 めろん ぶどうガム 検索フォームに「いちご ソーダ(※スペース区切り)」と入れたら、IDの1、2、4がマッチするようにしたいです。 スペース区切りで複数キーワードをAND条件で結ぶSQLは、以前教わりました。 http://okwave.jp/qa/q1212708.html $sql = 'select * from t_url'; if ($title != '') { $titles = array(); foreach (preg_split('/(\s| )+/', $title) as $word) { array_push($titles, "MyCol1 like '%$word%'"); } $sql .= ' where (' . implode(' and ', $titles) . ')'; } 今回の質問は、受け取った$titleを「MyCol1」だけでなく「MyCol1かMyCol2」にも同じ照会する方法をうかがいたいです。 検索キーワードが「いちご ソーダ」だったとき、MyCol1だけなら、 and (MyCol1 like '%いちご%' and MyCol2 like '%ソーダ%') でよいわけですが、MyCol2はどう熱かったらいいのでしょうか。 and (MyCol1 or MyCol2 like '%いちご%' and MyCol1 or MyCol2 like '%ソーダ%') みたいにできればよいのでしょうが。 PHPのコードも、上記のものだとMyCol1にしか照会がかかりませんが・・・

    • ベストアンサー
    • MySQL
  • 条件式における<>""の意味

    If Request.Form("case1")<>"" Then SQL=SQL & "AND" & "case1 Like '%"& Request.Form("case1") &"%'" Else SQL=SQL End If この部分のIf文の中の<>""が何を意味しているか分かりません。 色々検索してみたのですが、記号で検索するととんでもない量がヒットしてしまいうまくいきませんでした。 初歩的な質問かとは思いますがどうかお願いします。 また、こういうページに乗っている等ありましたらそれを教えて下さっても結構です。

  • スペース区切りのAND検索

    private void button1ActionPerformed(ActionEvent evt) { String data1 = area1.getText(); String data2 = text1.getText();     if(data1.length()>0){       area1.setText("");       String[] strAry = data1.split("\r\n"); for(int i = 0; i<strAry.length; i++){ if (strAry[i].indexOf(data2)!=-1)area1.append(strAry[i] + "\r\n"); } }else{ area1.setText(""); } } 上記は、button1を押すとtext1に書かれた文字列をテキストファイルの 中から検索し、area1に検索結果を表示させるものです。 text1に文字列が一つだけ書かれている場合は、これで良いのですが スペースで区切った文字列を全て含む、複数検索(AND検索)の場合は どうなるのでしょうか?(例:晴れ 天気) 苦し紛れにString[] strAry2 = data2.split(" ");をつくり forで回そうとしましたが、だめでした・・(or検索ではないですもんね)。 どうか良いお知恵をお貸しください。

    • ベストアンサー
    • Java