
VBスクリプトでよくわからないところがあるので教えてください。たくさんのチェックボックスがあるので、For i To ~Next の構文を使って効率よくチェックされたものだけSQLの構文に取り入れて検索しようとしたのですがうまくゆきません。どのようにしたらよいでしょうか。
今試してみたのは、検索条件の設定画面で、
<input type=checkbox name=tatemono(0) value=自社使用>自社使用
<input type=checkbox name=tatemono(1) value=事業用>事業用
<input type=checkbox name=tatemono(2) value=電算センター >電算センター
というようなチェックボックスを
検索処理用ページで
SQL="SELECT * FROM [データ] "
'チェックボックスのチェック数が0でなければWHERE文をいれるflagをTrueにしておく
If Request.Form("tatemono").Count>0 Then
SQL=SQL & "WHERE "
flag=True
End If
'チェックボックスを最初から調べてチェックされていたらその項目がyesになっているという条件をSQL文に追加する
For i=1 To Request.Form("tetemono").Count
If Request.Form("tatemono")(i)<>"" Then
fldname=Request.Form("tetemono")(i)
If flag=True Then
SQL = SQL & "AND"
Else
SQL = SQL & "WHERE"
End If
SQL= SQL & fldname & "=Yes"
End If
Next
とやってみたのですが、ぜんぜん駄目みたいです。
根本的にどこか間違ってますよね・・・。
直すところを教えてください。
お願いします。
No.2ベストアンサー
- 回答日時:
aspではVBやPHPのようにフォームの項目を配列として取り扱うことは出来ません。
下記のように行えばいいんじゃないでしょうか。Dim tatemonoCount
Dim strSQL
Dim strWhere
tatemonoCount = 2 '自分で件数を明記する
strWhere = ""
For i = 0 To tatemonoCount
If Request.Form("tetemono(" & i & ")") <> "" Then
strWhere = strWhere & "文字列と添え字iから作成されるフィールド名" = -1
End If
Next
strSQL="SELECT * FROM [データ] "
If strWhere <> "" Then
strSQL = strSQL & strWhere
End If
'SQLの実行
Request.Form("tetemono").Countはチェックされた数を返してくるだけですよね。間違ってました。
しかもHTML画面をForm("tatemono")にしてないし・・・。
もう一度整理して書き直してみます。
とても参考になりましたありがとうございました。
No.1
- 回答日時:
>うまくゆきません
うまくいかない場合は、自分の予想の動きと、実際の結果を書きましょう。
とりあえず、どこが悪いのか切り分けてみる必要があります。今回の場合、
・チェックボックスの値を取得
・SQLを実行
のどちらかに問題があると考えられます。
私が見たところチェックボックスの値が取れていないのではないかと思われます。
>name=tatemono(0)
>Request.Form("tetemono")
これではtatemono(0)の値を取得できません。Request.Form("tatemono(0)")でなければ取得できません。
この回答への補足
はい。ASPでのチェックボックスの値の取得の仕方が今ひとつよくわかっていないんです。
もう一度テストして試してみます。
form name を統一すると、チェックされたものだけのvalueがコンマ区切りで取得できるところまではわかったんですが、ひとつひとつを取り出したかったので、変なことをしてしまいました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数あるチェックボックスから...
-
クリアボタンの動作について
-
JQuery Mobileでチェックボック...
-
チェックボックス
-
JSP内で可変するチェックボック...
-
サイト内の物件を複数の検索条...
-
tabindexの取得
-
return trueとreturn falseの用...
-
指定したタグを書き換えるには?
-
プルダウンで選択すると、DBの...
-
selectメニューのselectedの位...
-
JSPとJavaScriptの連携について...
-
ラジオボタンにタブインデック...
-
【JavaScript】プルダウンで数...
-
ボタン無しでフォーム内容送信
-
プルダウン 項目が多いので先頭...
-
Selectボックスの幅を自動で広...
-
確認ダイアログの出し方(JavaS...
-
value内に変数を入れたい
-
<JavaScript>tableタグを入力不...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【jsp/Java】チェックボックス...
-
背景色を変えて未入力チェック...
-
チェックが入っていなかったら...
-
オフになっているチェックボッ...
-
チェックボックスとラジオボタ...
-
チェックボックスを使って条件検索
-
確認ページからフォームページ...
-
jquery複数のcheckboxの値について
-
チェックボックスのON/OFFでVal...
-
テキストフィードを「無効にす...
-
チェックボックスのON/OFFに応...
-
特定のID(またはクラス)で括ら...
-
削除確認のアラートを出したい
-
フォームの制御について
-
チェックボックスとテキストの値
-
checkboxをクリックしてリロー...
-
チェックした数でメッセージを...
-
localStorageでのcheckbox制御
-
チェックボックスの値
-
配列のチェックボックスをjavas...
おすすめ情報