网络工具 | 系统工具 | 应用软件 | 图形图像 | 多媒体类 | 行业软件 | 硬件资讯
教育教学 | 安全相关 | 游戏娱乐 | 街机游戏 | 电子书籍 | 新手上网 | 电脑技巧
网页设计 | 软件学堂 | 网络技术 | 程序设计 | 网络安全 | 游戏专区 | 两性话题
软件搜索
您现在的位置
友信真诚下载网 > 网络学院 > 程序设计 > asp编程
如何使用ASP在自己的网站建立投票机制

日期:2005-3-4 作者:未知 人气:173
如何使用ASP在自己的网站建立投票机制





Batman 翻译整理



一个很不错的建立自己的投票系统的ASP程序大家仔细读读,只要能够理解中间的关键技术,就能够在自己的网站上建立自己的投票站了。文件整理得很仓促,希望大家谅解。

 版权所有:

 ASP Polls

 version 1.0

 Tipped Cow Development and Adrenalin Labs

 结构简单介绍:

 ACCESS数据库设计结构:

 poll表主要字段名称:PollName,PollCreator,PollQuestion,Password,Choice1,Choice2

 Choice3,Choice4,Choice5,ID(自动编号),GetName

 pollresults表字段:PollID,PollAnswer,Name

 1.文件db.inc

<%

 Application("ASP_Poll") = "ASP_Poll"

 cnString = "DRIVER={Microsoft Access Driver (*.mdb)}; "

 cnString = cnString & "DBQ=" & Server.MapPath("Events.mdb")

 Application("ASPPollDSN") = cnString

 %>

 1.文件creat_poll1.asp

<% Title="Poll Generator" %>

<head> <link rel="STYLESHEET" type="text/css" href="style.css">

<title><%=Title%></title>

</head>

<body>

<div align="left"><img src="asp_poll.gif" width="231" height="90">
Another joint product from <a href="http://www.ncws.com/tippycow">Tipped Cow Development</a> and <a href="http://dstoflet.calweb.com">Adrenalin Labs</a>





</div>

<center>



<%

 Response.Write "<font face='arial'>"

 If Request("errormessage") <> "" Then

 Response.Write "<b>Error! </b>" & Request("errormessage")

 Else

 Response.Write "Please complete the form below to begin creating your own poll."

 End If

 %>







<table border=2 cellspacing=0 cellpadding=0><tr><td>

<form method="post" action="create_poll2.asp">





<table border=0 cellspacing=0 cellpadding=10 width=500><tr>

<td colspan=2 bgcolor=#000000 align=center class="bold2">

 Enter Your Name as the Poll Creator

</td>

</tr><tr>

<td bgcolor=#ffffff width=25% class="bold">Poll Creator:</td>

<td bgcolor=#ffffff>

<input type="text" name="creator" value="<%=Request("creator")%>" size=20 class="input">

</td>

</tr>

</table>



</td></tr>

<tr><td>



<table border=0 cellspacing=0 cellpadding=10 width=500><tr>

<td colspan=2 bgcolor=#000000 align=center class="bold2">

 Create a Password For Your Poll So That You Can Modify It At A

 Later Time

</td>

</tr><tr>

<td bgcolor=#ffffff width=25% class="bold">Poll Admin Password:</td>

<td bgcolor=#ffffff>

<input type="password" name="password" value="<%=Request("password")%>" size=10 maxlength=10 maxsize=10 class=input>

</td>

</tr>

</table>



</td></tr>

<tr><td>



<table border=0 cellspacing=0 cellpadding=10 width=500><tr>

<td colspan=2 bgcolor=#000000 align=center class="bold2">

 Give Your Poll a Unique Name

</td>

</tr><tr>

<td bgcolor=#ffffff width=25% class="bold">Poll Name:</td>

<td bgcolor=#ffffff>

<input type="text" name="name" value="<%=Request("name")%>" size=20 class=input>

</td>

</tr>

</table>



<table border=0 cellspacing=0 cellpadding=10 width=500><tr>

<td colspan=2 bgcolor=#000000 align=center class="bold2">

 Do you want to have the user enter their name?

</td>

</tr><tr>

<td bgcolor=#ffffff width=25% class="bold">Require user to enter their name:</td>

<td bgcolor=#ffffff class="bold">

 Yes<input type="radio" name="GetName" value="1">


 No <input type="radio" name="GetName" value="0" CHECKED>

</td>

</tr>

</table>



</td></tr>

<tr><td>



<table border=0 cellspacing=0 cellpadding=10 width=500><tr>

<td colspan=3 bgcolor=#000000 align=center class="bold2">

 Select Poll Type

</td>

</tr><tr>





<td colspan=2 bgcolor=#ffffff class="bold">What type of poll question

 do you wish to create?</td>

<td bgcolor=#ffffff class="bold">

<input type="radio" name="polltype" value="yes_no">Yes/No


<input type="radio" name="polltype" value="multiple_choice">Multiple Choice


</td>

</tr>

</table>

</td></tr></table>

<table width=500><tr>

<td colspan=3 align=right>

<input type="submit" value=" Next " class="inline">

</td></tr>

</table>



</center>

</body>

</html>

 3.文件connect.asp

<%

 id = Request("id")

 If id = "" Then

 id = 0

 End If

 num = Request("choice")

 

 If num <> "" Then



Set conn = Server.CreateObject("ADODB.Connection")

 dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "

 dsnpath = dsnpath & "DBQ=" & Server.MapPath("Events.mdb")

 conn.open dsnpath

 Set rs = Server.CreateObject("ADODB.RecordSet")

 rs.Open "PollResults", conn, 3, 3

 rs.AddNew

 rs("PollID") = Cint(id)

 rs("Name") = Request("Name")

 rs("PollAnswer") = Cint(num)

 rs.Update

 rs.Close

 set rs = Nothing

 conn.Close

 set conn = Nothing

 End If



If Request("return_page") <> Empty Then

 Response.Cookies("PollID") = id

 Response.Redirect Request("return_page")

 End If

 %>



<html>

<body bgcolor="#4f4f4f" text="#c0c0c0" link=#f5fcdc vlink=#f5fcdc>

<center>



<% If num <> "" Then %>





<table border=0 cellspacing=0 cellpadding=0><tr>



<td colspan=3 align=center><font face="verdana">

 Your selection has been recorded.

</td></tr>

</table>



<% End If %>





<%



Set conn = Server.CreateObject("ADODB.Connection")

 sql = "select * from Poll where ID = " & Cint(id)

 dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "

 dsnpath = dsnpath & "DBQ=" & Server.MapPath("Events.mdb")

 conn.open dsnpath

 Set rs = Conn.Execute(sql)

 If rs.EOF = False Then

 %>

<table border=1 cellspacing=0 cellpadding=5 width=500 bordercolor=#2f2f4f><tr>

<td colspan=3 bgcolor=#2f2f4f align=center><font face="verdana" color=#f5fcdc>

<%=rs("PollQuestion")%>

</td></tr>

<%

 Dim Choices(6)

 Dim Responses(6)

 For I=1 To 5

 choice = rs("Choice" & I)

 Choices(I) = choice

 If choice <> "" Then

 Set conn2 = Server.CreateObject("ADODB.Connection")

 sql = "select COUNT(PollAnswer) from PollResults where PollID = " & Cint(id) & " AND PollAnswer=" & I

 dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "

 dsnpath = dsnpath & "DBQ=" & Server.MapPath("Events.mdb")

 conn2.open dsnpath

 Set rs2 = Conn.Execute(sql)

 If rs2.EOF = False Then

 Response.Write "<tr><td colspan=2 bgcolor=#4f4f4f align=center width=400><font face='verdana' color=#f5fcdc>"

 Response.Write choice

 Response.Write "</td>"

 Responses(I) = rs2(0)

 Response.Write "<td colspan=1 bgcolor=#4f4f4f align=right><font face='verdana' color=#f5fcdc><b>" & rs2(0) & "</b></td>"

 Response.Write "</tr>"

 End If

 rs2.Close

 conn2.Close

 End If

 Next

 End If

 %>



</table>









<table >

<td colspan=3 align=center><font face="arial">

<font face="ms sans serif"><b> Polls Results</b></font>

</td></tr>



<%

 Total = 0

 For I=1 To 5

 responseCount = Responses(I)

 If responseCount <> "" Then

 Total = Total + Cint(responseCount)

 End If

 Next

 For I=1 To 5

 choice = Choices(I)

 responseCount = Responses(I)

 If choice <> "" Then

 Response.Write "<tr><td colspan=1 align=left><font face='arial'>"

 Response.Write choice

 Response.Write "</td>"

 Response.Write "<td colspan=2 width=400><table border=1 cellspacing=0><tr><td bgcolor=blue align=center width=" & ConvertToPix(responseCount) & "><font face='ms sans serif' color=white><b>" & ConvertToPercent(responseCount) & "</td></tr></table></td>"

 Response.Write "</tr>"

 End If

 Next



Function ConvertToPix(sz)

 If sz = 0 Then

 ConvertToPix = 0

 Else

 ConvertToPix = Cint(400/Total * sz)

 End If

 End Function



Function ConvertToPercent(sz)

 If sz = 0 Then

 ConvertToPercent = "0%"

 Else

 ConvertToPercent = FormatPercent(sz/Total, 2)

 End If

 End Function



%>



</table>





<% If num = "" Then %>





<table border=0 cellspacing=0 cellpadding=0><tr>



<td colspan=3 align=center><font face="verdana">

<a href="default.asp?ID=<%=id%>">Add Your Vote</a>

</td></tr>

</table>



<% End If %>







<table width=100%><tr><td align=right>

<table border=1 cellpadding=5 cellspacing=0 bordercolor=#f5fcdc><tr><td bgcolor=#2f2f4f>

<font face='verdana' size=+1><a href='javascript:history.back()'>Back</a>

</td></tr></table>

</td></tr></table>



</center>

</body>

</html>



4、文件default.asp

<%

 ID = Request("ID")

 If ID = "" Then

 ID = 30

 End If

 Title = "Polls (Create your own poll)"

 %>



<html>



<head><link rel="STYLESHEET" type="text/css" href="style.css">

<title>ASP Polls</title>



<script language="JavaScript">



function gatherForm(form){

 if(form.Mode[0].checked){

 form.submit();

 }else{

 form.action="collect.asp";

 form.submit();

 }

 }



</script>

</head>





<body>

<div align="left"><img src="asp_poll.gif" width="231" height="90">
Another joint product from <a href="http://www.ncws.com/tippycow">Tipped Cow Development</a> and <a href="http://dstoflet.calweb.com">Adrenalin Labs</a>





</div>

<table width="100%" cellspacing="0" cellpadding="2">

<tr>

<td align="left" width="25%" valign="top" class="bold">

<form action="default.asp">

<table width="100" border="1" bordercolor=#ccccff>

<tr>

<td>

<table border=0 cellspacing=0 cellpadding=5 bgcolor=#4f4f4f><tr>

<td colspan=3 bgcolor=#000000 align=center class="bold2">Select A Poll</td>

</tr><tr>

<td colspan=3 bgcolor=#000000 align=center>

<select name="ID" onChange="gatherForm(this.form)" class="input">

<%

 Set conn = Server.CreateObject("ADODB.Connection")

 conn.Open Application("ASPPollDSN")

 sql = "select * from Poll"

 Set rs = conn.Execute(sql)

 Do While Not rs.EOF

 %>





<option value="<%=rs("ID")%>"><%=rs("PollName")%>



<%

 rs.MoveNext

 Loop

 %>



</select>

</tr>



<tr>

<td colspan=3 align=right bgcolor=#FFFFFF class="bold">

 Vote In Poll:<input type="radio" name="Mode" value="Vote" CHECKED>


 View Results:<input type="radio" name="Mode" value="View">

</td></tr>



<tr>

<td colspan=3 align=right bgcolor=#000000 align=center>

<input type="button" value=" Go " onClick="gatherForm(this.form)" class="inline">

</td></tr>



</table>

</td>

</tr>

</table></form>


<div align="left" class="bold">

<a href="create_poll1.asp">Create your own poll</a>


<a href='javascript:history.back()'>Back</a>

</div>

</td>



<td align="center" width="75%" valign="top">

<table width="100" border=1 cellspacing=2 cellpadding=0 bordercolor=#ccccff><tr><td>

<form method="post" action="collect.asp">

<input type="hidden" name="id" value="<%=id%>">



<%

 Set conn = Server.CreateObject("ADODB.Connection")

 conn.Open Application("ASPPollDSN")

 sql = "select * from Poll where ID = " & ID

 Set rs = conn.Execute(sql)

 If rs.EOF = False Then

 %>



<table border=0 cellspacing=0 cellpadding=10 bgcolor=#4f4f4f><tr>

<!-- <td colspan=3 bgcolor=#2f2f4f align=center><font face="verdana" color=#f5fcdc>

 Poll: <%=rs("PollName")%>

</td> -->

</tr><tr>

<td colspan=3 bgcolor=#000000 align=left class="bold2"><%=rs("PollQuestion")%>

</tr>

<%

 For I=1 To 5

 choice = rs("Choice" & I)

 If choice <> "" Then

 %>

<tr> <!-- <td width=50 colspan=1 bgcolor=#4f4f4f> </td> -->

<td colspan=2 bgcolor=#FFFFFF class="bold" align="left">

<%=choice%></td><td bgcolor=#FFFFFF align="left"><input type="radio" name="choice" value="<%=I%>">

</td></tr>

<%

 End If

 Next

 %>



</tr>

<% If rs("GetName") = "1" Then %>

<tr><td colspan=1 align=right bgcolor=#FFFFFF class="bold">

 Your Name:</td>

<td colspan=2 align=right bgcolor=#FFFFFF>

<input type="text" name="Name">

</td></tr>

<% End If %>

<tr>

<td colspan=3 align=right bgcolor=#000000 align=center>

<input type="submit" value="Submit Vote" class="inline">

</td></tr>

</table>



<%

 Else

 Response.Write "Invalid Poll Id Request!"

 End If

 %>

</td></tr></form></table>



</td>

</tr>

</table>

</body>

</html>



5、文件global.asa

<SCRIPT LANGUAGE="VBScript" RUNAT="SERVER">



Sub Application_OnStart

 Application("ASP_Poll") = "ASP_Poll"

 cnString = "DRIVER={Microsoft Access Driver (*.mdb)}; "

 cnString = cnString & "DBQ=" & Server.MapPath("Events.mdb")

 Application("ASPPollDSN") = cnString

 End Sub

</SCRIPT>



6、文件pool.inc

<%

 DBPath = Server.MapPath("/poll/Events.mdb")

 ID = 28

 If Request.Cookies("PollID") = CStr(ID) Then

 ShowDisplay

 Else

 ShowVote

 End If



Function ConvertToPercent(total, sz)

 If sz = 0 Then

 ConvertToPercent = "0%"

 Else

 ConvertToPercent = FormatPercent(sz/total, 2)

 End If

 End Function



Sub ShowVote



%>



<div align=right>

<table width=125 border=1 cellspacing=0 cellpadding=0><tr><td>

<form method="post" action="/poll/collect.asp">

<input type="hidden" name="id" value="<%=id%>">

<input type="hidden" name="return_page" value="<%=Request.ServerVariables("PATH_INFO")%>">

<%

 Set conn = Server.CreateObject("ADODB.Connection")

 dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "

 dsnpath = dsnpath & "DBQ=" & DBPath

 conn.open dsnpath

 sql = "select * from Poll where ID = " & ID

 Set rs = conn.Execute(sql)

 If rs.EOF = False Then

 %>



<table width=125 border=0 cellspacing=0 cellpadding=2 bgcolor=#4f4f4f>

<tr>

<td colspan=3 bgcolor=#2f2f4f align=center>

<%=rs("PollQuestion")%>

</td>

</tr>

<%

 For I=1 To 5

 choice = rs("Choice" & I)

 If choice <> "" Then

 %>

<tr>

<td colspan=2 bgcolor=#000000 valign=top width=80%>

<%=choice%> </td><td valign=top colspan=1 width=20% bgcolor=#000000> <input type="radio" name="choice" value="<%=I%>">

</td></tr>

<%

 End If

 Next

 %>



<tr>

<td colspan=3 align=center bgcolor=#2f2f4f align=right>

<input type="submit" value="Submit" class=nav>

</td></tr>

</table>

<%

 End If

 %>



</td></tr></form></table>



</center>



<%



End Sub





 Sub ShowDisplay



Set conn = Server.CreateObject("ADODB.Connection")

 sql = "select * from Poll where ID = " & Cint(ID)

 dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "

 dsnpath = dsnpath & "DBQ=" & DBPath

 conn.open dsnpath

 Set rs = Conn.Execute(sql)

 If rs.EOF = False Then

 Dim Choices(6)

 Dim Responses(6)

 For I=1 To 5

 choice = rs("Choice" & I)

 Choices(I) = choice

 If choice <> "" Then

 Set conn2 = Server.CreateObject("ADODB.Connection")

 sql = "select COUNT(PollAnswer) from PollResults where PollID = " & Cint(id) & " AND PollAnswer=" & I

 dsnpath = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; "

 dsnpath = dsnpath & "DBQ=" & DBPath

 conn2.open dsnpath

 Set rs2 = Conn.Execute(sql)

 If rs2.EOF = False Then

 Responses(I) = rs2(0)

 End If

 rs2.Close

 conn2.Close

 End If

 Next

 %>

<div align="right">

<table border=1 cellspacing=0 cellpadding=2><tr><td>

<table width=125 border=0 cellspacing=0><tr>

<td colspan=2 bgcolor=#2f2f4f align=center class=orgbold>ASP Poll

</td></tr>

<tr><td colspan=2 align=center bgcolor=#ccccff class=black>

 Q:<%=rs("PollQuestion")%>

</td></tr>



<%

 Total = 0

 For I=1 To 5

 responseCount = Responses(I)

 If responseCount <> "" Then

 Total = Total + Cint(responseCount)

 End If

 Next

 For I=1 To 5

 choice = Choices(I)

 responseCount = Responses(I)

 If choice <> "" Then

 Response.Write "<tr><td colspan=1 align=left><font face='verdana' size=-1 color=#f0f0f0>"

 Response.Write choice

 Response.Write "</td>"

 Response.Write "<td>" & ConvertToPercent(total, responseCount) & "</td>"

 Response.Write "</tr>"

 End If

 Next

 Response.Write "</table></td></tr></table></div>"

 End If

 End Sub

 %>

</div>



(出处:未知)

相关文章:
·
相关软件:
 特别推荐

asp编程

 热点TOP10
·常用SQL查询命令的语法
·如何使用ASP在自己的网站建立投票机制
·计算文件下载时间
关于我们 | 帮助(?) | 广告服务 | 友情链接 | 版权声明 | 网站地图 | 商业合作 | 在线留言 | 联系我们 |
『友信真诚下载网』非凡享受源至于真诚服务 本站QQ官方1号群:6694792
CopyRight 2002-2005 zcdown.com™ All Rights Reserved
苏ICP备05031592
51.la Free Site Stats