程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> ASP技巧 >> 如何使用ASP在自己的網站建立投票機制(一)

如何使用ASP在自己的網站建立投票機制(一)

編輯:ASP技巧

 

    一個很不錯的建立自己的投票系統的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"><br>Another joint PRoduct from <a href="Tipped'>http://www.ncws.com/tippycow">Tipped Cow Development</a> and <a href="Adrenalin'>http://dstoflet.calweb.com">Adrenalin Labs</a>
<br><br>
</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
%>

<br><br>
<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"><br>
   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<br>
   <input type="radio" name="polltype" value="multiple_choice">Multiple Choice<br>
  </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 %>
<br><br>
<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 %>
<br><br>
<%

   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>

<br><br>

<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 %>
<br><br>
<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 %>

<br><br>
<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>

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved