出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

DBの検索(チェックボックス・ラジオボタンの利用)   ノリコさん [01/04/30 16:56:34] [150]
  Re:DBの検索(チェックボックス・ラジオボタンの利用)   YasNet(管理人)さん [01/04/30 17:56:40] [151]
    Re:DBの検索(チェックボックス・ラジオボタンの利用)   ノリコさん [01/05/01 20:27:59] [153]
      Re:DBの検索(チェックボックス・ラジオボタンの利用)   NOIZEさん [01/05/01 21:38:40] [154]
        Re:DBの検索(チェックボックス・ラジオボタンの利用)   YasNet(管理人)さん [01/05/01 23:08:25] [155]

[150] DBの検索(チェックボックス・ラジオボタンの利用)
投稿者:ノリコさん 01/04/30 16:56:34
はじめまして。
たまたまこちらのページを見つけたので質問させて頂きます。
今、ASPを利用して様々な仕組みを作らなければならないのですが、
初心者なのでわからないことだらけです。どなたか助けて下さい。

ASPを使ってDBの特定レコードを抽出するのが目的です。
その時に検索条件の指定フォームにチェックボックスやラジオボタン
を表示してユーザーに条件を指定させ、その条件に合致するレコード
のみ表示させたいんです。

どんな構造のDB(ちなみにACCESSを使っています)を作ったら
いいのか、どんなコードを書いたらいいのか皆目見当がつかない
です。
大変お手数ですが、どなたか助けて頂けませんか?
どこかにサンプルでもあれば助かるのですが・・・

[151] Re:DBの検索(チェックボックス・ラジオボタンの利用)
投稿者:YasNet(管理人)さん の <ホームページ> 01/04/30 17:56:40
こんにちは YasNet です。
 
> はじめまして。
> たまたまこちらのページを見つけたので質問させて頂きます。
 
何かの縁ですのでこれからも、利用してやって下さい。 
 
> 今、ASPを利用して様々な仕組みを作らなければならないのですが、
> 初心者なのでわからないことだらけです。どなたか助けて下さい。
>
> ASPを使ってDBの特定レコードを抽出するのが目的です。
> その時に検索条件の指定フォームにチェックボックスやラジオボタン
> を表示してユーザーに条件を指定させ、その条件に合致するレコード
> のみ表示させたいんです。
>
> どんな構造のDB(ちなみにACCESSを使っています)を作ったら
> いいのか、どんなコードを書いたらいいのか皆目見当がつかない
> です。
> 大変お手数ですが、どなたか助けて頂けませんか?
> どこかにサンプルでもあれば助かるのですが・・・
話が漠然としていて、どう答えたらよいのやら・・・
一応、同時アクセスが発生しないのであれば、アクセスで十分対応出来ます。
あと、上記の場合だとSQLが分かってないと出来ません
情報は搭載とのリンク集をたどるとかなりの情報を得ることが出来ます
私は、ASPの事はこのリンクにある情報で勉強しましたから
もう少し具体的に質問して頂けると回答しやすいです。
 
公開できるプログラムのサンプルは今ありません・・・すみません
では では

[153] Re:DBの検索(チェックボックス・ラジオボタンの利用)
投稿者:ノリコさん 01/05/01 20:27:59
こんにちは。
わかりにくい説明ですみませんでした。

> > ASPを使ってDBの特定レコードを抽出するのが目的です。
> > その時に検索条件の指定フォームにチェックボックスやラジオボタン
> > を表示してユーザーに条件を指定させ、その条件に合致するレコード
> > のみ表示させたいんです。
> >
> > どんな構造のDB(ちなみにACCESSを使っています)を作ったら
> > いいのか、どんなコードを書いたらいいのか皆目見当がつかない
> > です。

> 話が漠然としていて、どう答えたらよいのやら・・・
> 一応、同時アクセスが発生しないのであれば、アクセスで十分対応出来ます。
> あと、上記の場合だとSQLが分かってないと出来ません
> 情報は搭載とのリンク集をたどるとかなりの情報を得ることが出来ます
> 私は、ASPの事はこのリンクにある情報で勉強しましたから
> もう少し具体的に質問して頂けると回答しやすいです。

具体的な例を出して説明してみます。

こんなDBがあったとします。(ACCESSをイメージ)

  name   A   B   C
1 suzuki  yes  no  no
2 yamada  no  no  no
3 konndo  no  yes  yes
4 simizu  yes  no  yes

web上で3つのチェックボックス(それぞれA、B、Cに対応)を表示させ、
ユーザーに必要な項目にチェックさせ、submitさせて、サーバーにて
すべてyesのレコードの内容を表示させます。
例えば、
・Aにチェックをした場合はレコード1とレコード4
・AとCにチェックした場合はレコード4のみ
を取り出して表示させるということです。
わかるでしょうか?

ちなみにSQLは一般的なASPの本に載っていることやASPを紹介した
websiteに載っているレベルであれば十分理解しているつもりです。

すみませんがお願いします。



[154] Re:DBの検索(チェックボックス・ラジオボタンの利用)
投稿者:NOIZEさん 01/05/01 21:38:40
まずSQL文ですが、ABCはACCESSのYesNoでよろしんですね?
例えばAを検索する時は下記のようにSQL文を書きます

Set db = Server.CreateObject("ADODB.Connection")
db.Open "DBName" 'システムDSNに登録したDBの名前です
sqlstr = "SELECT * FROM TableName WHERE A = " & "Yes"
'上記TableName はDB内のテーブル名です AがYESのみ抽出します
Set rec = db.Execute(sqlstr)
Do While Not rec.EOF 'DBの最後までループさせます
Response.Write rec("name") & "<br>" '名前を書いて改行します
rec.MoveNext
Loop
db.Close

という感じです。「それぞれA、B、Cに対応」ということで、
ANDやORでの検索ではないようですので、もしAがチェックだったら
そうでなくってBがチェックだったら、そうでなかったらと判断式で
SLECT文を分けて作るのが効率的です。
またYesNoの抽出でない時は、(名前等の抽出)Select文の書き方が若干
変わりますので、ご注意ください。
送信するがわのHTMLのフォームはおわかりでしょうか?
おわかりでない場合にはメールでもいただければ、さらにくわしく
ご説明しますよ

[155] Re:DBの検索(チェックボックス・ラジオボタンの利用)
投稿者:YasNet(管理人)さん の <ホームページ> 01/05/01 23:08:25
こんにちは YasNet です。
NOIZE さん横レスすみません
 
参考までに、別の方法を提示しておきます。(基本的にNOIZEさんの方法で良いかと思います)
 
■前提条件
 DBの項目のNOの部分をNULLに設定します。
 HTMLの各チェック項目のvalue値にYESをセットします。

 ※この場合、データ項目が分かれているので、画面のチェックボックス又はラジオボタンの
  名称も分けたほうがわかりやすいでしょう。
 
Set db = Server.CreateObject("ADODB.Connection")
db.Open "DBName" 'システムDSNに登録したDBの名前です
sqlstr = "SELECT * FROM TableName WHERE A = '" & HTMLの項目A & "'"
sqlstr = sqlstr & " and B = '" & HTMLの項目B & "'"
sqlstr = sqlstr & " and C = '" & HTMLの項目C & "'"

といった感じで出来るでしょう(未テストですが・・・)
 
あくまで1つの方法です、参考までに・・・
では では



TreeBBS For ASP V.0.1.3
Program By YasNet