複数集計をしたい
こんにちは。http://www.ken3.org/を参考にしながら、下記までたどり着いたのですが、
<%
QA = -1
If Request.QueryString("a4") = "on" Then QA = 4
If Request.QueryString("a3") = "on" Then QA = 3
If Request.QueryString("a2") = "on" Then QA = 2
If Request.QueryString("a1") = "on" Then QA = 1
If Request.QueryString("a0") = "on" Then QA = 0
If QA >= 0 Then
Call test108_WRITE(QA)
Call test108_SUM()
Else
%>
<FORM ACTION="*****.asp" METHOD="GET">
<table width="500" border="0" cellspacing="2" cellpadding="2">
<tr>
<td><font size="2">Q.しつもん</font></td>
</tr>
<tr>
<td><font size="2">
<INPUT TYPE="checkbox" NAME="a4">
ああああ</font></td>
</tr>
<tr>
<td><font size="2">
<INPUT TYPE="checkbox" NAME="a3">
いいいいい</font></td>
</tr>
<tr>
<td><font size="2">
<INPUT TYPE="checkbox" NAME="a2">
ううううう</font></td>
</tr>
<tr>
<td><font size="2">
<INPUT TYPE="checkbox" NAME="a1">
えええええ</font></td>
</tr>
<tr>
<td><font size="2">
<input type="checkbox" name="a0">
おおおおお</font></td>
</tr>
</table>
<br>
<br>
<INPUT TYPE="submit" VALUE="送 信">
<INPUT TYPE="reset" VALUE="入力クリア">
</FORM>
<% End If %>
<%
Sub test108_WRITE(QA)
Set objFS = Server.CreateObject("Scripting.FileSystemObject")
Set ts = objFS.OpenTextFile(Server.MapPath("*****.txt"), 8, True)
ts.write QA & ","
ts.write strMSG & ","
ts.write Now & ","
ts.write Request.ServerVariables("REMOTE_ADDR") & ","
ts.write Request.ServerVariables("HTTP_USER_AGENT")
ts.write chr(13) & chr(10)
ts.close
Response.Write "<font size=2>ご協力ありがとうございました。</font><br><br>"
Response.Write "<font size=2>Q.しつもん</font><br>"
Call test016_SUM()
End Sub
Sub test016_SUM()
dim strRECORD
dim nCNT(10)
dim nSUM
nSUM = 0
For i = 0 to 10
nCNT(i) = 0
Next
Set objFS = Server.CreateObject("Scripting.FileSystemObject")
Set ts = objFS.OpenTextFile(Server.MapPath("*****.txt"), 1, true)
Do While ts.AtEndOfStream = False
strRECORD = ts.ReadLine
i = Cint(Left(strRECORD, 1))
nCNT(i) = nCNT(i) + 1
nSUM = nSUM + 1
Loop
ts.close
strBOX = Array("おおおおお" , "えええええ" , "ううううう" , "いいいいい" , "あああああ")
Response.Write "<table cellspacing=0 cellpadding=0 border=0>"
Response.Write "<br>"
For i = 4 To 0 Step -1
Response.Write "<tr>"
Response.Write "<td align=left width=200px><font size=2>" & strBOX(i) & "</font></td>"
strMSG = FormatNumber(CInt((nCNT(i) / nSUM) * 200), 1)
Response.Write "< td background=img/graphbg.gif align=left width=200px><font size=2> <img src=img/graphbar.gif width=" & strMSG & " height=13>< /font></td>"
strMSG = FormatNumber((nCNT(i) / nSUM) * 100, 1)
Response.Write "<td align=right width=50px><font size=2>" & strMSG & "%</font></td></tr>"
Response.Write "</tr>"
Next
Response.Write "</table>"
End Sub
%>
これだと「型が一致しません。: 'Cint'」という表示が出てなかなかうまくいかず手詰まりの状態になってしまいました。
皆様のお力をお貸し下さいませ。宜しくお願い致します。
お礼
正常にIFが動作しました。 使用するINPUT全部<FORM>で 囲まないといけないんですね。 理解しましたありがとうございます。