⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 view.asp

📁 1.用Asp等网页设计语言实现网络在线投票系统的设计。 2.设计报告内容应说明: ⑴ 课程设计目的与功能; ⑵ 需求分析
💻 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 + -