CHECKBOX NAME を 使った ソースコードを紹介する表示色の説明:ASP VBScriptは <% 〜 %> キーワードはCHECKBOX NAME です。
<%@LANGUAGE=VBScript%>
<html>
<head>
<title>FORM CHECKBOX NAME=を個別に作成(Ifの嵐でWhere句を作成)</title>
</head>
<body>
<h1>FORM CHECKBOX NAME=を個別に作成(Ifの嵐でWhere句を作成)</h1>
<FORM ACTION="test093-1.asp" METHOD="POST">
<font color="blue">CHECKBOX NAME=を個別に作成 Where句を作成するTEST</font><br>
表示したい・区分をチェックしてから検索ボタンを押してください<br>
<INPUT TYPE="CHECKBOX" NAME="ASP">ASP<br>
<INPUT TYPE="CHECKBOX" NAME="VBA">VBA<br>
<INPUT TYPE="CHECKBOX" NAME="24H">コンビニ系<br>
<INPUT TYPE="CHECKBOX" NAME="GUCHI">愚痴系<br>
<INPUT TYPE="submit" VALUE="検索する">
</FORM>
<%
'ADO DB Connection オブジェクトを作成する、英文そのままじゃん
Set db=Server.CreateObject("ADODB.Connection")
'データアクセスにはJet.OLEDB.4.0を使うことを設定
db.Provider = "Microsoft.Jet.OLEDB.4.0"
'次に、接続DBの位置を渡すので、Server.MapPathで変換して渡す
db.ConnectionString = Server.MapPath("db029.mdb")
'やっとデータベースを開ける
db.open
'WHERE句を作成する
strWHERE = "" '条件を初期化する
'4つの区分をそれぞれ判断する
If Request.Form("VBA") = "on" Then 'VBAの判断
If strWHERE = "" Then
strWHERE = " Where F_KUBUN='VBA' "
Else
strWHERE = strWHERE & " Or F_KUBUN='VBA'"
End If
End If
If Request.Form("ASP") = "on" Then 'ASPの判断
If strWHERE = "" Then
strWHERE = " Where F_KUBUN='ASP' "
Else
strWHERE = strWHERE & " Or F_KUBUN='ASP'"
End If
End If
If Request.Form("24H") = "on" Then '24Hの判断
If strWHERE = "" Then
strWHERE = " Where F_KUBUN='24H' "
Else
strWHERE = strWHERE & " Or F_KUBUN='24H'"
End If
End If
If Request.Form("GUCHI") = "on" Then 'GUCHIの判断
If strWHERE = "" Then
strWHERE = " Where F_KUBUN='GUCHI' "
Else
strWHERE = strWHERE & " Or F_KUBUN='GUCHI'"
End If
End If
'SQL文を作成する (作成したWHERE句を組み合わせる)
strSQL = "Select * From KANSOU " '感想(KANSOU)テーブルから全項目(*)
strSQL = strSQL & strWHERE
strSQL = strSQL & " ORDER BY WriteTime DESC" '並べ替えは時間の降順
'オマケで画面にデータ表示
Response.Write "<hr>発行する(した)SQL文は<br><B><font color='green'>"
Response.Write strSQL & "</font></B><br>です<hr>"
'お約束のレコードセットの作成 SQL文の発行
Set rs = db.Execute(strSQL)
'データの表示をテーブルで行う
Response.Write "<TABLE Border='1'>"
'見出しをバカっぽく、そのまま書き込む
Response.Write "<TR>"
Response.Write "<TD>日付</TD>"
Response.Write "<TD>区分</TD>"
Response.Write "<TD>メモ</TD>"
Response.Write "</TR>"
'お約束のEOFまでループは(データが無くなるまでループ)、
Do While rs.EOF = False 'レコードセットの.EOFがFalseの間
Response.Write "<TR>" '内容を表示する、行開始のタグ<TR>
'データの中身を表示
Response.Write "<TD>" & rs.Fields.Item("WriteTime") & "</TD>"
Response.Write "<TD>" & rs.Fields.Item("F_KUBUN") & "</TD>"
Response.Write "<TD>" & rs.Fields.Item("F_MEMO") & "</TD>"
Response.Write "</TR>"
'次のレコードにポインタを移動する
rs.MoveNext 'これを忘れると悲惨なことに、、、
Loop
Response.Write "</TABLE>" 'テーブルは終わりです
rs.Close '開いていたレコードセットを閉じる
db.Close 'データベースも閉じようよ
Set db = Nothing 'お行儀よくオブジェクトも開放しましょう
%>
<HR>
終了です。<br>
If文の連続で何も考えないで作成してみました(オイオイ・・・)<br>
<A href="test029-1.asp">データの登録(テストデータを増やす)</a><br>
</body>
</html>
| 最近発売の雑誌を紹介する
プログラミングと関係あるような無いような、ビジネス・経済の雑誌を紹介します。
- 週刊 ダイヤモンド 2008年 5/17号
- PRESIDENT (プレジデント) 2008年 6/2号
- 財界 2008年 5/27号
- 金融経済統計月報 2008年 04月号
- 美容と経営 2008年 06月号
- 宣伝会議 2008年 5/15号
- 食品商業 2008年 06月号
- 建設統計月報 2008年 05月号
- 株主手帖 2008年 06月号
|