📄 view.asp
字号:
<!--#include file="config.asp"-->
<%
'程序设计by:杨敏:::
'QQ:343872146:::
'email:yangmin@whut.edu.cn:::
If Request.QueryString("id")="" Then
Response.Write "出现错误,参数未传递!"
Response.End
End If
Call OpenConn
sql="SELECT toupiao.* FROM toupiao WHERE (((toupiao.id)=" & Request.QueryString("id") & "));"
rs.open sql,conn,3,2
If rs.bof and rs.eof Then
Response.Write "出现错误"
Else
ReDim TouPiao(rs.Fields("optnum"))'初始化用来存放票数的数组:::
tpNum=rs.Fields("tpnum")'将存放票数的字段取出:::
'下面开始从数据库中查找以前的票数,保存在j中:::
If tpNum="" Then
'第一次有人来查看,以前没有记录:::
j=0
For i=1 to rs.Fields("optnum")
TouPiao(i)=0
Next
Else
i=0:j=0
Do
k=instr(i+1,tpNum,"|")
If k>0 Then
j=j+1'查到一个:::
TouPiao(j)=cint(mid(tpNum,i+1,k-i-1))'取出这个数字:::
i=k
ElseIf k=0 Then
'最后没有了“|”,但还有一个数要取:::
j=j+1
TouPiao(j)=int(Right(tpNum,len(tpNum)-i))
End If
Loop until i=0 or j=rs.Fields("optnum")
If j<rs.Fields("optnum") Then
'数据库里记录的数值与项数不符,通常是管理员更改了选项个数导致的:::
For i=j+1 to rs.Fields("optnum")
TouPiao(i)=0
Next
End If
End If
If Request.Form("toupiaoid")<>"" Then
'用户是参加了投票来的:::
If Request.Form("tytype")=1 Then
'单选
i=int(Request.Form("C"))
TouPiao(i)=TouPiao(i)+1
'Response.Write i
Else
'多选
For i=1 to Request.Form("optnum")
If Request.Form("C" & cstr(i))<>"" Then TouPiao(i)=TouPiao(i)+1
'Response.Write TouPiao(i) & "<br>"
Next
End If
tpNum=""'下面准备写数据库:::
For i=1 to rs.Fields("optnum")-1
'最后一条不必再加“|”:::
tpNum=tpNum & cstr(TouPiao(i)) & "|"
Next
tpNum=tpNum & TouPiao(rs.Fields("optnum"))
rs.Fields("tpnum")=tpNum
rs.Update
End If
TouPiaoNum=0
For i=1 to rs.Fields("optnum")
'Response.Write TouPiao(i) & "<br>"
TouPiaoNum=TouPiaoNum+TouPiao(i)
Next
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>投票结果</title>
</head>
<body>
<table width="758" border="1" cellpadding="3" cellspacing="0" bordercolor="#00CCFF">
<tr>
<td align="center" bgcolor="#00CCFF">投票结果</td>
</tr>
<tr>
<td><table width="100%" border="1" cellspacing="0" cellpadding="3" bordercolordark="#FFFFFF" bordercolorlight="#000000">
<tr>
<td width="7%" align="center" nowrap>序号</td>
<td width="40%" align="center">选项</td>
<td width="35%" align="center">柱状图</td>
<td width="6%" align="center">票数</td>
<td width="12%" align="center">%</td>
</tr>
<%
l=0'开始提取tptext中的每一个选项内容
For i=1 to rs.Fields("optnum")
k=l
l=instr(l+1,rs.fields("tptext"),"|")
%>
<tr>
<td align="center"><%=i%></td>
<td><%If l>0 Then Response.Write(mid(rs.fields("tptext"),k+1,l-k-1)) Else Response.Write(right(rs.fields("tptext"),len(rs.fields("tptext"))-k))%></td>
<td><img src="img/bar.gif" width="<%If TouPiaoNum=0 Then Response.Write("1") Else Response.Write(int(TouPiao(i)/TouPiaoNum*100))%>" height="10"></td>
<td align="center"><%=TouPiao(i)%></td>
<td align="center"> <%If TouPiaoNum=0 Then Response.Write("-") Else Response.Write(int(TouPiao(i)/TouPiaoNum*1000)/10)%>
%</td>
</tr>
<%
Next
%>
</table></td>
</tr>
</table>
</body>
<%
End If
Call CloseConn
%>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -