求图片投票程序

求图片投票程序,第1张

整个完整的投票系统(原创):

显示页面show.asp的代码如下

<!--#include file="conn.asp"-->

<%

set rs=server.CreateObject("adodb.recordset")

sql="select * from ceshi"弊或咐

rs.open sql,conn,1,1

%>

<script>

function view(){

window.open("view.asp","","toolbar=no,width=400,height=500,left=100,top=50")

}

</script>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>投票</title>

<style type="text/css">

<!--

a:link {

text-decoration: none

}

a:visited {

text-decoration: none

}

a:hover {

text-decoration: none

}

a:active {

text-decoration: none

}

-->

</style></head>

<script>

function chkselect(form,idname){

var nn

nn=0

var targetname=idname

for (var i=0i<form.elements.lengthi++)

{

var ee=form.elements[i]

if (ee.name==targetname)

if(ee.checked)

{

nn++

}

}

return nn

}

function vote(){

num=chkselect(form,"pid")

if (num<1){

alert("请选择要投票的人")

return false

}

if(num>1){

alert("只能选择其中一个进行投票")

return false

}

document.form.action="vote.asp"

document.form.submit()

}

</script>

<body>

<form action="" method="post" name="form" id="form">

<table width="429" border="1" align="center" cellspacing="1">

<tr>

<td width="423">

<table width="200" border="1" align="center" cellspacing="0">

<%

rs.pagesize=8 '设置每页显示8张图片

if not rs.eof then

page=cint(request("page"))

if page<1 then page=1

if page>rs.pagecount then page=rs.pagecount

showpages rs,page

else

%>

<script>

alert("没有你要的信息!")

history.back()

</script>

<%

end if

%>

<%

sub showpages(rs,page)

rs.absolutepage=page

i=1

do while not rs.eof

%>

<tr>

<%

for j=1 to 4 '设置每行显示3张图片

%>

<td>

<table width="200" border="1" align="团明center" cellspacing="0">

<tr>

<td><img src=<%=rs("images")%>width="100" height="100"></td width="100" height="100">

</tr>

<tr>

<td><input name="pid" type="checkbox" id="pid" value="<%=rs("id")%>">

<%=rs("name")%>租纯</td>

</tr>

</table></td>

<%

i=i+1

rs.movenext

if i>8 then exit do

if rs.eof then exit for

next

loop

end sub

%>

</tr>

</table></td>

</tr>

<tr>

<td align="center"><div align="center">

<input type="submit" name="Submit" value="投他一票" onClick="return vote()"> 

<input type="button" name="Submit2" value="查看结果" onClick="return view()">

</div></td>

</tr>

<tr>

<td align="center">

<div align="center">

<%

if page=1 then

response.Write("第一页 上一页 ")

end if

if page<>1 then

response.Write("<a href=?page=1>第一页 </a>")

response.Write("<a href=?page="&page-1&">上一页 </a>")

end if

if page<>rs.pagecount then

response.Write("<a href=?page="&page+1&">下一页 </a>")

response.Write("<a href=?page="&rs.pagecount&">最末页 </a>")

end if

if page=rs.pagecount then

response.Write("下一页 最末页 ")

end if

%>

</div></td>

</tr>

</table>

</form>

<%

rs.close

set rs=nothing

%>

</body>

投票处理页面vote.asp的代码如下:

<!--#include file="conn.asp"-->

<%

if session("userip")<>"" then

%>

<script>

alert("请不要重复投票!")

window.navigate("show.asp")

</script>

<%

else

%>

<%

id=trim(request("pid"))

set rs=server.CreateObject("adodb.recordset")

sql="select * from ceshi where id="&id&""

rs.open sql,conn,1,3

rs("vote")=rs("vote")+1 '票数加1

rs.update '记得更新才可以

%>

<script>

alert("投票成功!谢谢您的投票!")

window.navigate("show.asp")

</script>

<%

userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")

'如果他用代理服务器的话,那么就透过代理服务器来取得客户端的真实IP地址

If userip = "" Then userip = Request.ServerVariables("REMOTE_ADDR")

'如果获取的IP是空,也就是说他没有使用代理服务器,那么就直接取得客户端的真实IP地址

session("userip")=userip

rs.close

set rs=nothing

end if

%>

投票结果查看页面view.asp的代码如下:

<!--#include file="conn.asp"-->

<%

set rs=server.CreateObject("adodb.recordset")

sql="select * from ceshi"

rs.open sql,conn,1,1

%>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>查看投票结果</title>

</head>

<body>

<table width="355" border="1" align="center" cellspacing="0">

<tr>

<td colspan="2" align="center">投票结果查看(排名不分先后)</td>

</tr>

<tr>

<td width="138" align="center">参赛人的名字</td>

<td width="207" align="center">投票的票数</td>

</tr>

<tr>

<td colspan="2">

<%

if not rs.eof then

do while not rs.eof

%>

<table width="100%" border="1" cellspacing="0">

<tr>

<td width="40%"><%=rs("name")%></td>

<td width="60%"><%=rs("vote")%></td>

</tr>

</table>

<%

rs.movenext

loop

end if

%></td>

</tr>

<tr>

<td colspan="2" align="center">

<input type="button" name="Submit" value="关 闭" onClick="window.close()"> </td>

</tr>

</table>

</body>

测试过了,没有问题,其中表的名字我是用ceshi,里面的字段有id(递增ID),name(投票人的名字),images(参赛人的图片),vote(投票数目)

上面这个的话,还是可以作弊,我又将vote.asp页面作了修改,多加了个userip表的userip字段来保存投过票的IP,这样的话,同一个IP就只可以投票一次,可以防止作弊:

<!--#include file="conn.asp"-->

<%

ipaddress = Request.ServerVariables("HTTP_X_FORWARDED_FOR")

'如果他用代理服务器的话,那么就透过代理服务器来取得客户端的真实IP地址

If ipaddress = "" Then ipaddress = Request.ServerVariables("REMOTE_ADDR")

'如果获取的IP是空,也就是说他没有使用代理服务器,那么就直接取得客户端的真实IP地址

%>

<%

set rsip=server.CreateObject("adodb.recordset")

sqlip="select userip from userip"

rsip.open sqlip,conn,1,1

ip=rsip("userip")

ipshuzu=split(ip,",")

ipnum=ubound(ipshuzu)

for i=0 to ipnum

'response.Write(ipshuzu(i))

if ipaddress=ipshuzu(i) then

response.Write("<script>alert('请不要重复投票!')window.navigate('show.asp')</script>")

end if

next

rsip.close

set rsip=nothing

%>

<%

'else

%>

<%

id=trim(request("pid"))

set rs=server.CreateObject("adodb.recordset")

sql="select * from ceshi where id="&id&""

rs.open sql,conn,1,3

rs("vote")=rs("vote")+1 '票数加1

rs.update '记得更新才可以

rs.close

set rs=nothing

set rs1=server.CreateObject("adodb.recordset")

sql1="select * from userip"

rs1.open sql1,conn,1,3

'response.Write(ipaddress)

rs1("userip")=ipaddress&","&rs1("userip") '先在userip字段添加一个IP,不然会出错!

rs1.update '记得更新才可以

rs1.close

set rs1=nothing

%>

<script>

alert("投票成功!谢谢您的投票!")

window.navigate("show.asp")

</script>

如果有什么问题的话,可以问我:63055127

美国有联邦政府级别和州级等各层次选举。美国总统由各州的选举人团选举产生。联邦议会的议员则经由直选产生。各州的州长和立法机构也是经由直接选举产生。美国宪法规定,除部返腊份犯罪者之外,所有18岁以上的美国公民均拥有选举权。联邦选举有总统选举、国会选举(包括众议院选举和参议院选举)。国会选举和总统选举均会每四年举行一次,国会还会每两年举行一次中间选举。美国的选举中,大多数州长和国会席次都高度集中于共和党和民主党两大政党。

投票时,选民卖亏带选民登记卡到投票处,在记名册上签名,之后进入一个投票机,选择要投票的候选人,漏配滑按键投票。

微信投票小程序有:

1、龙艺秀投票制作平台,功能强大,简单易用,不需要下载注册就可直接发起活动的,闹唯加载速度也非常快,最重要的是完全/免/费的,这款小程序支持:图文投票,视频投票,文字投票,群投票等,功能齐全,可以设置各种防刷票的 *** 作,例如,限制IP投票数,限定地域,打开投票验证码等等。可以先去他们首页看看活动年案例符不符合你们的需求,符合的话直接碰闭点下方的发起投票就可以。

2、荣易创投票制作平台,是专门提供投票制作的网站,像经常做的图文投票、视频投票等都可以发起,这个平台有很多企事液吵培业单位的活动,还是比较稳定靠谱的。

3.问卷星问卷星主要功能就是问卷调查,考试等功能。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8237196.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存