亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

ASP+VML+DB實現投票統計項目

2019-11-18 20:01:41
字體:
來源:轉載
供稿:網友

       幾個月前我看到過一位網友lshdic寫的一篇用JS+VML的《使用 Vml 制作立體柱狀投票統計圖的完整程序》。
       我覺得這個方法非常不錯,可以不使用圖片就生成統計圖,現在就讓我們一起來用asp實現這個程序。

      準備工作:用access建立一個MDB數據庫,名為vote.mdb,并且在數據庫中建立如下兩個表:



然后建立我們按照ASP開發的慣例建立連接數據庫的文件conn.asp
<%
'conn.asp

Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("vote.mdb")
%>

顯示投票項目的列表,因為我們要制作的是一個多項目的投票系統vote_list.asp
<!--#include file="conn.asp"-->
<html>
<head>
<title>投票項目列表</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="../images/main.CSS" rel="stylesheet" type="text/css">
</head>

<%
set rs=conn.execute("select * from votetitle order by voteid desc")
%>
<table border=1 cellspacing="0" style="border-collapse: collapse" cellpadding="0" bgcolor="#ffffff" bordercolor="#000000" width=100%>
  <tr>
    <td bgcolor="#EFEFEF">所有投票列表</td>
  </tr>
  <%do while not rs.eof%>
  <tr>
    <td>編號:<font color="#FF0000"><%=rs("voteid")%>&nbsp; </font><a href="vote.asp?voteid=<%=rs("voteid")%>" target="_blank"><%=rs("votetitle")%>
      </a>(<%=rs("time")%>)</td>
  </tr>
  <%rs.movenext 
loop 
rs.close
set rs=nothing%>
</table>
</body>
</html>

投票顯示頁面vote_show.asp
<%if request("voteid")="" then
response.write "參數沒有指定。"
response.End()
end if%>
<!--#include file="conn.asp"-->
<html>
<head>
<title>查看結果</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<STYLE>
td{font-size:12px}
body{font-size:12px}
v/:*{behavior:url(#default#VML);} //這里聲明了v作為VML公用變量
</STYLE>
<link href="../images/main.css" rel="stylesheet" type="text/css">
</head>
<%
dim voteid
voteid=request("voteid")
set rs=conn.execute("select count from vote,votetitle where votetitle.voteid="&voteid&" and vote.voteid=votetitle.voteid order by id")
iii=0
do while not rs.eof
ii=ii+1
if ii=1 then
ceocio=trim(rs("count"))
ceocio1=trim("array1["&iii&"]")
else
ceocio=trim(ceocio&","&rs("count"))
ceocio1=trim(ceocio1&"+array1["&iii&"]")
end if
iii=iii+1
rs.movenext 
loop 
rs.close
set rs=nothing
'response.write ii
'response.write ceocio1
%>
<script>
array1=new Array(<%=ceocio%>) //不同的投票票數
allstr=<%=ceocio1%>
//alert(allstr)
//allstr=array1[0]+array1[1]+array1[2]+array1[3]+array1[4]+array1[5] //得到總數
for(i=0;i<=<%=(ii-1)%>;i++){
mathstr=Math.round(100/(allstr/array1[i])) //求百分之幾, 100/(總和/單個)
document.write ("<v:rect fillcolor='lime' style='width:20;color:navy;height:"+500*<%=(ii-1)%>/(1000/mathstr)+"'><br>&nbsp;%"+mathstr+"<br>"+array1[i]+"人<v:Extrusion backdepth='15pt' on='true'/></v:rect>")
}
</script>

<%
voteid=request("voteid")
set rs=conn.execute("select * from vote,votetitle where votetitle.voteid="&voteid&" and vote.voteid=votetitle.voteid order by id")
%>
<table border=1 cellspacing="0" style="border-collapse: collapse" cellpadding="2" bgcolor="#ffffff" bordercolor="#000000" width=100%>
  <tr>
    <td bgcolor="#EFEFEF">關于:<font color="#FF0000"><%=rs("votetitle")%></font>的調查結果:<br>
      共有<b><font color="#FF0000"><%=rs("total")%></font></b>人參與調查<br>
      (<%=rs("time")%>到<%=date%>)</td>
  </tr>
  <%do while not rs.eof
dim i
i=i+1%>
  <tr>
    <td>選項<%=i%>:<%=rs("title")%> &nbsp;&nbsp;&nbsp; <font color="#FF0000"><%=rs("count")%>人</font></td>
  </tr>
  <%rs.movenext 
loop 
rs.close
set rs=nothing%>
  <tr>
    <td> </td>
  </tr>
</table>
<br>
<a href="vote_list.asp">查看過往投票</a> <br>
<a href="vote.asp?voteid=<%=request("voteid")%>">投票本項目</a>
</body>
</html>

vote.asp
<!--#include file="conn.asp"-->
<%if request("voteid")="" then
set rs=conn.execute("select top 1 voteid from votetitle order by voteid desc")
voteid=rs("voteid")
rs.close
set rs=nothing
else
voteid=request("voteid")
end if%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="style.css" rel="stylesheet" type="text/css">
</head>

<body>
<%
if request("action")="vote" then
     '加上","&request("voteid")","為了不使id為1的投票和id為11的投票混遐
     if instr(request.cookies("vote"),","&request("voteid")&",")=0 then
     else
        response.write "你已經投過票了"
        response.end
     end if
sql="update [vote] set count=count+1 where id="&request("votevalue")
conn.execute(sql)
sql="update [votetitle] set total=total+1 where voteid="&request("voteid")
conn.execute(sql)
'寫入cookies有效期
Response.Cookies("vote").Expires=Date+1
'將已經投票的選項全部記錄在cookies,用,號隔開。
Response.Cookies("vote")=","&Request.Cookies("vote")&","&Request("voteid")&","
voteid=request("voteid")
'轉向基本
response.redirect "vote_show.asp?voteid="&voteid
end if
%>
<%
'dim voteid
'voteid=request("voteid")
set rs=conn.execute("select * from vote,votetitle where votetitle.voteid="&voteid&" and vote.voteid=votetitle.voteid order by id")
%>
<table border=1 cellspacing="0" style="border-collapse: collapse" cellpadding="0" bgcolor="#ffffff" bordercolor="#C0C0C0" width=100%>
  <tr>
    <td colspan="2" bgcolor="#EFEFEF">調查:<%=rs("votetitle")%>(<%=rs("time")%>)</td>
  </tr><form name="form1" method="post" action="vote.asp?action=vote&voteid=<%=voteid%>">
<%do while not rs.eof
dim i
i=i+1%>
  <tr>
    <td colspan="2">
        <input type="radio" name="votevalue" value="<%=rs("id")%>" <%if i=1 then%>checked<%end if%>>
        <%=rs("title")%>   
    </td>
  </tr>
<%rs.movenext 
loop 
rs.close
set rs=nothing%>
  <tr>
      <td colspan="2">
        <%if instr(request.cookies("vote"),","&voteid&",")=0 then%>
        <input type="submit" name="Submit" value="Vote"></form>
        <%else%>
  <font color="#FF0000">您已經投過票了</font>
        <%end if%></td>
  </tr>
</table>
<br>
<a href="vote_list.asp">查看過往投票</a> <br>
<a href="vote_show.asp?voteid=<%=voteid%>">查看本投票的結果</a>
</body>
</html>

后臺管理頁面admin_vote_list.asp
<!--#include file="conn.asp"-->
<%'添加管理員權限在這里,這里為了大家應用方便,我沒有加驗證就直接允許進入%>
<html>
<head>
<title>投票項目列表</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="style.css" rel="stylesheet" type="text/css">
</head>

<body>
<%
'刪除模塊
dim action
action=request("action")
if action="del" then
            Dim StrSQL1,StrSQL2
            StrSQL1="delete from vote where voteid="&request("voteid")
            conn.Execute StrSQL1
            StrSQL2="delete from votetitle where voteid="&request("voteid")
            conn.Execute StrSQL2
   response.Redirect "?"
end if
'修改模塊
'/////////////////////
'修改表單
if action="add" then
%>
<table border=1 cellspacing="0" style="border-collapse: collapse" cellpadding="0" bgcolor="#ffffff" bordercolor="#C0C0C0" width=100%>
  <tr>
    <td bgcolor="#EFEFEF"><center>
        添加新的投票</center></td>
  </tr>
  <tr>
    <td>請輸入這個投票所需要的選項個數。</td>
  </tr>
  <tr>
    <td><form name="form1" method="post" action="?action=add1">
        <select name="num">
  <%for i1=2 to 10%>
          <option value="<%=i1%>"><%=i1%></option>
  <%next%>
        </select>
        <input type="submit" name="Submit" value="Submit">
      </form></td>
  </tr>
</table>
<%
end if
if action="add1" then
num=request("num")
%>
<table border=1 cellspacing="0" style="border-collapse: collapse" cellpadding="0" bgcolor="#ffffff" bordercolor="#C0C0C0" width=100%>
  <tr>
    <td bgcolor="#EFEFEF"><center>
        添加新的投票</center></td>
  </tr>
  <tr>
    <td>請輸入這個投票所需要的詳細信息。</td>
  </tr>
  <tr>
    <td><form name="form2" method="post" action="?action=add2">
        投票名稱
        <input type="text" name="votetitle">
        <br>
  <%for i2=1 to num%>
        選項<%=i2%><input type="text" name="<%=i2%>"><br>
        <%next%>
        <input type="hidden" name="num" value="<%=request("num")%>">
        <input type="submit" name="Submit2" value="Submit">
        <input type="reset" name="Submit3" value="Reset">
      </form></td>
  </tr>
</table>

<%end if
if action="add2" then
Set rs=Server.CreateObject("ADODB.Recordset")
sql="SELECT * FROM votetitle"
rs.Open sql,conn,1,3
rs.Addnew
rs("votetitle")=request("votetitle")
rs("time")=date()
rs.Update
rs.Close
set rs=conn.execute("select top 1 voteid from votetitle order by voteid desc")
voteid=rs("voteid")
rs.close
set rs=nothing
'//////////////
'/////////////循環
num=request("num")
for i3=1 to num
Set rs=Server.CreateObject("ADODB.Recordset")
sql="SELECT * FROM vote"
rs.Open sql,conn,1,3
rs.Addnew
rs("title")=request(i3)
rs("voteid")=voteid
rs.Update
rs.Close
next
'////////////循環結束
Set rs=Nothing
response.Write "<a href=admin_vote_list.asp>成功添加,請返回</a>"
end if
'修改表單結束
'////////////////////
'修改執行代碼
'修改執行代碼結束
%>

<%if action="" then
set rs=conn.execute("select * from votetitle order by voteid desc")
%>
<table border=1 cellspacing="0" style="border-collapse: collapse" cellpadding="0" bgcolor="#ffffff" bordercolor="#C0C0C0" width=100%>
  <tr>
    <td colspan="2" bgcolor="#EFEFEF">所有投票列表</td>
  </tr>
  <%do while not rs.eof%>
  <tr>
    <td width="44%">編號:<font color="#FF0000"><%=rs("voteid")%>&nbsp; </font><a href="vote.asp?voteid=<%=rs("voteid")%>" target="_blank"><%=rs("votetitle")%>
      </a>(<%=rs("time")%>)</td>
    <td width="50%">【<a href="?action=del&voteid=<%=rs("voteid")%>">刪除</a>】</td>
  </tr>
  <%rs.movenext 
loop 
rs.close
set rs=nothing%>
  <tr>
    <td colspan="2">【<a href="?action=add">添加一個新的投票調查項目</a>】</td>
  </tr>
</table>
</body>
</html>
<%end if%>

最后顯示效果如下:



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久久国产精品| 久久天天躁夜夜躁狠狠躁2022| 日韩在线视频二区| 亚洲精品中文字幕有码专区| 欧美成人一二三| 欧美精品在线播放| 中文字幕欧美日韩| 亚洲免费视频观看| 亚洲欧美成人一区二区在线电影| 亚洲自拍小视频| 色偷偷噜噜噜亚洲男人的天堂| 亚洲国产免费av| 国产精品黄视频| 亚洲综合在线小说| 另类天堂视频在线观看| 国产精品久久久久久久久久久久久| 91九色精品视频| 欧美成人精品激情在线观看| 98精品国产高清在线xxxx天堂| 欧美激情精品久久久久久| 亚洲色图偷窥自拍| 欧美日韩中文在线观看| 日韩精品视频免费在线观看| 国产女人精品视频| www国产亚洲精品久久网站| 欧美精品日韩www.p站| 欧美日韩中文字幕在线视频| 欧美韩国理论所午夜片917电影| 中文字幕在线国产精品| 亚洲欧美www| 国产精品第8页| 宅男66日本亚洲欧美视频| 亚洲成**性毛茸茸| 色哟哟入口国产精品| 成人久久一区二区三区| 欧美精品在线免费| 久久91亚洲人成电影网站| 热门国产精品亚洲第一区在线| 欧美亚洲另类在线| 日韩av电影在线播放| 欧美成人性色生活仑片| 精品中文字幕久久久久久| 国产精品久久视频| 日韩欧美亚洲成人| 欧美乱人伦中文字幕在线| 国产欧美日韩91| 国产精品av免费在线观看| 国产成人一区三区| 中文欧美日本在线资源| 国产精品视频久| 亚洲r级在线观看| 欧美日韩亚洲网| 伊人久久免费视频| 51视频国产精品一区二区| 九九九久久久久久| 日韩精品视频在线观看免费| 91天堂在线视频| 一本色道久久综合狠狠躁篇的优点| 97香蕉久久超级碰碰高清版| 日韩成人激情视频| 色av吧综合网| 欧美又大又粗又长| 国产午夜精品久久久| 国产精品午夜一区二区欲梦| 97视频在线观看网址| 国产欧美日韩精品专区| 欧美激情网友自拍| 综合136福利视频在线| 中日韩午夜理伦电影免费| 日本欧美在线视频| 国产精品18久久久久久麻辣| 亚洲伦理中文字幕| 欧美国产视频日韩| 国产不卡一区二区在线播放| 亚洲国产小视频在线观看| 亚洲一区二区三区在线视频| 欧美激情视频网站| 国产精品久久久久久五月尺| 亚洲开心激情网| 日韩免费观看视频| 久久久久久高潮国产精品视| 亚洲国产精品嫩草影院久久| 久久av中文字幕| 国产精品私拍pans大尺度在线| 久久久精品国产网站| 黄色一区二区在线| 中文字幕欧美日韩精品| 17婷婷久久www| 欧美日韩亚洲一区二区三区| 九九热精品视频国产| 在线观看视频亚洲| 亚洲黄色成人网| 久久免费在线观看| 欧美性受xxxx黑人猛交| 国产视频久久久久| 97精品在线视频| 久久久久这里只有精品| 久久高清视频免费| 久久精品视频在线观看| 久久视频这里只有精品| 日韩在线欧美在线| 亚洲成avwww人| 日本精品一区二区三区在线播放视频| 日韩激情视频在线| 日韩精品日韩在线观看| 中文欧美在线视频| 日韩专区在线播放| 久久精品亚洲精品| 精品国产乱码久久久久久天美| 国外成人免费在线播放| 亚洲国产精品va在线看黑人动漫| 欧美在线欧美在线| 精品久久久久久久中文字幕| 亚洲成色999久久网站| 久久久久久久97| 日本国产高清不卡| 亚洲视频自拍偷拍| 国产精品欧美一区二区| 国产精品91免费在线| 91精品啪aⅴ在线观看国产| 欧美一级bbbbb性bbbb喷潮片| 中文字幕在线日韩| 日韩在线视频播放| 欧美日韩在线免费观看| 欧美高清视频免费观看| 欧美自拍大量在线观看| 日韩在线不卡视频| 亚洲激情在线视频| 亚洲国产精品大全| 性欧美激情精品| 亚洲成人网在线观看| 欧美乱大交xxxxx另类电影| 久久精品美女视频网站| 欧美在线欧美在线| 亚洲天堂久久av| 欧美成人在线免费| 日韩av免费在线观看| 成人av在线网址| 国产精品久久久久久亚洲影视| 欧美日韩国产在线播放| 久久久久久久999精品视频| 亚州成人av在线| 久久久精品免费视频| 日韩激情视频在线| 精品香蕉一区二区三区| 2019国产精品自在线拍国产不卡| 久久97久久97精品免视看| 亚洲在线免费视频| 亚洲第一中文字幕在线观看| www.日本久久久久com.| 亚洲影院色无极综合| 欧美中文字幕视频在线观看| 一个人看的www欧美| 亚洲欧洲自拍偷拍| 中文字幕亚洲欧美日韩2019| 国产日韩欧美视频| 欧美性猛交xxxx久久久| 日韩免费黄色av| 伊人久久免费视频| 国产精品com| 国产精品第一第二| 欧美国产日本高清在线| 亚洲第一视频网站| 俺去亚洲欧洲欧美日韩|