三流君(TOP) /ASPで遊ぶ /記事一覧

入力、結果表示を1つのASPファイルにまとめた

test016-1.asp

このメルマガの満足度は?選択後、送信ボタンを押してください。
6.大変満足、知人に教えます
5.満足
4.まぁまぁ
3.どちらとも言えない
2.少し不満
1.不満
0.かなり不満、解除します



コーヒーブレイク たまには寄り道、休憩も(↓広告です):
広告:[Blogで商品紹介] ← 足跡から人気を判断?
[本日発売の商品] ← 発売日が当日の商品を紹介、、、するが効果が無いので → [先週発売の商品] ← を作成して、先走らないで、少し落ち着いてみます(笑)

Callを使用したサンプル(ソースの紹介)

詳細解説は[http:/asp/backno/asp016.html]を見てください
下記、/cgi-bin/test/test016-1.aspのソース(中身)です

Call を 使った ソースコードを紹介する

表示色の説明:ASP VBScriptは <% 〜 %>
キーワードはCall です。 <%@LANGUAGE=VBScript%> <html> <head> <title>入力、結果表示を1つのASPファイルにまとめた</title> </head> <body> <h2>入力、結果表示を1つのASPファイルにまとめた</h2> test016-1.asp<br> <hr> <% 'まずは、パラメータ有無の判断を行う If IsEmpty(Request.QueryString("a")) = False Then 'バラメーター有りの時 If Request.QueryString("a") = "99" Then Call test016_SUM() '結果表示の関数を呼ぶ Else Call test016_WRITE() '書き込みの関数を呼ぶ End If Else '↓フォームの入力処理を書く(普通のHTML) %> <FORM ACTION="test016-1.asp" METHOD="GET"> このメルマガの満足度は?選択後、送信ボタンを押してください。<br> <INPUT TYPE="RADIO" NAME="a" VALUE="6">6.大変満足、知人に教えます<br> <INPUT TYPE="RADIO" NAME="a" VALUE="5">5.満足<br> <INPUT TYPE="RADIO" NAME="a" VALUE="4">4.まぁまぁ<br> <INPUT TYPE="RADIO" NAME="a" VALUE="3">3.どちらとも言えない<br> <INPUT TYPE="RADIO" NAME="a" VALUE="2">2.少し不満<br> <INPUT TYPE="RADIO" NAME="a" VALUE="1">1.不満<br> <INPUT TYPE="RADIO" NAME="a" VALUE="0">0.かなり不満、解除します<br> <br> <INPUT TYPE="submit" VALUE="送 信"> <INPUT TYPE="reset" VALUE="入力クリア"> </FORM> <% End If %> <hr> </body> </html> <% 'ここから下にSUB関数をまとめてみました。 Sub test016_WRITE() '入力値を判断して書き込む 'アンケートの結果をまず判断する strMSG = "不正なパラメーターです" 'エラーメッセージを初期値として代入 if Request.QueryString("a") = "6" then strMSG = "大変満足" 'asp013追加 if Request.QueryString("a") = "5" then strMSG = "満足" if Request.QueryString("a") = "4" then strMSG = "まぁまぁ" if Request.QueryString("a") = "3" then strMSG = "どちらとも言えない" if Request.QueryString("a") = "2" then strMSG = "少し不満" if Request.QueryString("a") = "1" then strMSG = "不満" if Request.QueryString("a") = "0" then strMSG = "かなり不満" 'asp013追加 If strMSG = "不正なパラメーターです" Then 'エラーパラメータのままか?チェック Response.Write "データを正しく受け取れませんでした<br>" Else 'FileSystemObjectを生成します。 Set objFS = Server.CreateObject("Scripting.FileSystemObject") 'test016.txt を追加モードで開く Set ts = objFS.OpenTextFile(Server.MapPath("test016.txt"), 8, True) 'ファイルにアンケート結果のデータを書き込む ts.write Request.QueryString("a") & "," '結果0〜6を書く ts.write strMSG & "," 'ファイルに結果を書き込む ts.write Now '時刻を書く ts.write chr(13) & chr(10) '改行する '使ったファイルは閉じようよ ts.close Response.Write "あなたの回答は<b>" & strMSG & "</b>でした<BR>" Call test016_SUM() '結果表示を呼ぶ 016追加 End if End Sub Sub test016_SUM() '結果の表示関数 dim strRECORD 'レコード内容を一時保存 dim nCNT(10) 'カウンター 変数 10個もいらないけど dim nSUM '回答の合計数 nSUM = 0 '初期化する 'カウンター変数をループで初期化しておく For i = 0 to 10 nCNT(i) = 0 Next 'FileSystemObjectを生成します、、って英文、そのままジャン。 Set objFS = Server.CreateObject("Scripting.FileSystemObject") 'test016.txt 結果ファイルを読取専用モードで開く Set ts = objFS.OpenTextFile(Server.MapPath("test016.txt"), 1, True) Do While ts.AtEndOfStream = False 'ファイルの終端になってない間ループする strRECORD = ts.ReadLine 'ファイルからデータを一行を読む 'Left関数を使って左から1文字目をCintで数値変換 i = Cint(Left(strRECORD, 1)) '読みこんだレコードの1文字目を数値変換 'nCNT(i番目)をカウントアップ nCNT(i) = nCNT(i) + 1 '*2合計数は無条件にカウントアップ nSUM = nSUM + 1 Loop ts.close '使ったファイルは閉じようよ Response.Write "<hr><h3>アンケート集計結果</h3><hr>" Response.Write "アンケート回答数<b> " & nSUM & "</b>人です" '*4回答数表示 'Array関数を使用して、評価コメントを初期化 strBOX = Array("かなり不満", "不満", "少し不満", "どちらとも言えない", _ "まぁまぁ", "満足", "大変満足") '結果の表示を<TABLE>タグを使用して表示 Response.Write "<TABLE border=1>" 'border=1で境界線(ワクを表示) Response.Write "<TR><TD>評価</TD><TD>コメント</TD><TD>人数</TD>" Response.Write "<TD>%</TD></TR>" '*3 %の見出しを追加 'ループで回して評価の集計データを表示する For i = 6 To 0 Step -1 '6〜0のループを作る Response.Write "<TR><TD>" & i & "</TD>" Response.Write "<TD>" & strBOX(i) & "</TD>" Response.Write "<TD ALIGN=RIGHT>" & nCNT(i) & "</TD>" 'ALIGN=RIGHT追加 '%を計算して、表示する strMSG = FormatNumber((nCNT(i) / nSUM) * 100, 1) '計算と変換処理 Response.Write "<TD ALIGN=RIGHT>" & strMSG & "%</TD></TR>" Next Response.Write "</TABLE>" '忘れずにテーブルを終わりにする End Sub %>

最近発売の雑誌を紹介する

たまには、パズルなとで頭を柔らかくしておくと、プログラミングのひらめきもUPするかなぁ・・・
  1. スケルトン広場 2008年 06月号
  2. ナンプレランド 2008年 06月号
  3. アロークロス 2008年 06月号
  4. 漢字館GOLD (ゴールド) 2008年 06月号
  5. 漢字道 2008年 06月号

人気の書籍を紹介します

  1. [4000029932]- 『世界』主要論文選―1946-1995
  2. [4408451509]- それって、立派な「うつ」ですよ―自分を責める人たちの処方箋
  3. [4479840699]- 東アジアの巨大古墳
  4. [4845104571]- 大きな学力
  5. [4642056513]- 古代インド文明の謎 (歴史文化ライブラリー 251)
  6. [4492042091]- 韓国はドラマチック2――ドラマ&映画スターでみる韓国スタイル

Googleで関連項目を検索する

LANGUAGE=VBScript + [キーワード:Call] Sub|Function プログラム|プログラミング
↓で検索するとプログラムの例 Sub/Function でまとまったHP

Google

あれ?私のページが検索に載ってない(笑)一度お試しを(私のページに、また戻ってきてね(爆))

三流解説とリンクページを紹介

ASP系の解説を項目ごとにまとめてみました

[ASP Form等を使用したデータのやり取り]
[ASP その他処理サンプル]
[ASP テキストファイル処理]
[ASP VBScript関数関係の説明]
[ASP ADOでMdbファイルを使う]
[ASP ADOでExcelと接続してみた]

その他:blogや広告↓
[日記的なblog]← あまり更新してないけど・・・
[三流なプログラムコード]← 恥ずかしいのであまり載せてないけど・・・
[通販商品の足跡を紹介] ←通販商品などを紹介してます


現在時刻は、2008/05/12 16:57:53です。
[Topへ戻る] −−>[ASP系へ戻る] −−>[バックナンバーを見る]