请教ASP高人:设置一个IP只能投5人的票,在线等。谢谢
这是我的代码原文,谢谢啦!一个用户,或者一个IP只能投5个人。。。然后对一个候选人只能投一次。我目前的代码只能实现一个IP对同一候选人只能投一次,但是可以投无数次个候选人...
这是我的代码原文,谢谢啦!
一个用户,或者一个IP只能投5个人。。。然后对一个候选人只能投一次。
我目前的代码只能实现一个IP对同一候选人只能投一次,但是可以投无数次个候选人。。我现在想设置为只能投5个候选人。
<% Dim VoTeid,HostUrl,Zuid
VoTeid = Int(CHECKSTR(trim(Request.QueryString("VoTeid"))))
HostUrl=Request.ServerVariables("HTTP_REFERER")
Zuid=Cint(session("nihaoID"))
if VoTeid="" then
Call Alert ("不允许值为空,请选择后提交!","index.asp")
End if
Rem 获取IP
function getIP()
getIP = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If getIP = "" Then
getIP = Request.ServerVariables("REMOTE_ADDR")
end if
end function
Rem 投票开关
If power=0 then
Call Alert ("投票评选活动已关闭!","index.asp")
End if
function ZhiIP(vid,ip)
sql="Select * from nihao where Voteid="&vid&" and Hostip='"&ip&"'"
Set rs=conn.execute(sql)
if not rs.eof then
ZhiIP=true
else
ZhiIP=false
end if
end function
if ZhiIP(Voteid,getIP())=true then
Call Alert ("你的IP:"&getIP()&"已经给这位选手投票,不能继续投票!","index.asp")
end if
sql="update nihao set Amio=Amio+1 where id="&Voteid
conn.execute(sql)
sql="insert into zhi_rui_v_Vo(Voteid,Userid,Hostip,HostAd,HostUl,AddTime) values("&Voteid&","&Zuid&",'"&getIP()&"','"&dlwz&"','"&HostUrl&"',#"&now()&"#)"
conn.execute(sql)
Call Alert("投票成功,感谢您宝贵的一票!","index.asp")
%>
请大家写出具体的ASP代码,谢谢啊。。。。这样说我也不太懂! 展开
一个用户,或者一个IP只能投5个人。。。然后对一个候选人只能投一次。
我目前的代码只能实现一个IP对同一候选人只能投一次,但是可以投无数次个候选人。。我现在想设置为只能投5个候选人。
<% Dim VoTeid,HostUrl,Zuid
VoTeid = Int(CHECKSTR(trim(Request.QueryString("VoTeid"))))
HostUrl=Request.ServerVariables("HTTP_REFERER")
Zuid=Cint(session("nihaoID"))
if VoTeid="" then
Call Alert ("不允许值为空,请选择后提交!","index.asp")
End if
Rem 获取IP
function getIP()
getIP = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If getIP = "" Then
getIP = Request.ServerVariables("REMOTE_ADDR")
end if
end function
Rem 投票开关
If power=0 then
Call Alert ("投票评选活动已关闭!","index.asp")
End if
function ZhiIP(vid,ip)
sql="Select * from nihao where Voteid="&vid&" and Hostip='"&ip&"'"
Set rs=conn.execute(sql)
if not rs.eof then
ZhiIP=true
else
ZhiIP=false
end if
end function
if ZhiIP(Voteid,getIP())=true then
Call Alert ("你的IP:"&getIP()&"已经给这位选手投票,不能继续投票!","index.asp")
end if
sql="update nihao set Amio=Amio+1 where id="&Voteid
conn.execute(sql)
sql="insert into zhi_rui_v_Vo(Voteid,Userid,Hostip,HostAd,HostUl,AddTime) values("&Voteid&","&Zuid&",'"&getIP()&"','"&dlwz&"','"&HostUrl&"',#"&now()&"#)"
conn.execute(sql)
Call Alert("投票成功,感谢您宝贵的一票!","index.asp")
%>
请大家写出具体的ASP代码,谢谢啊。。。。这样说我也不太懂! 展开
3个回答
51IDC
2024-12-01 广告
2024-12-01 广告
独立IP服务器是专为满足高端网络需求而设计的服务器解决方案。它提供的、不可共享的IP地址,确保您的网站、应用或服务享有更高的安全性、稳定性和可靠性。独立IP服务器能有效避免共享IP可能带来的潜在风险,如IP被封禁等问题,为您提供更优质的网络...
点击进入详情页
本回答由51IDC提供
展开全部
必须使用数据库才能实现
数据库表设计
两个数据库表
第一个,存储用户
Userid //用户id 若为匿名用户(未登录)id为000;
GroupID //被投过票的userid,是userid的字符串拼接,可以用 userid1;userid2;
第二个存储ip
CurrentIP //用户的ip
GroupID //被投过票的userid
数据库设计完了,然后根据实际情况去更新数据库
当用户投票时,查询数据库,有则判断该用户投过几次,
如果无则判断一下以当前ip操作过的用户有几次
如果无则插入一条新纪录
数据库表设计
两个数据库表
第一个,存储用户
Userid //用户id 若为匿名用户(未登录)id为000;
GroupID //被投过票的userid,是userid的字符串拼接,可以用 userid1;userid2;
第二个存储ip
CurrentIP //用户的ip
GroupID //被投过票的userid
数据库设计完了,然后根据实际情况去更新数据库
当用户投票时,查询数据库,有则判断该用户投过几次,
如果无则判断一下以当前ip操作过的用户有几次
如果无则插入一条新纪录
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的代码写的复杂了点而且不断跑后台,
给你思路,初始化的时候,一次找出该IP投过的人员,然后把投过的CheckBox设置为不可用。
投票的时候,不可用的数目+打勾的数目控制为5(前台JS控制),超过就报消息“只能投5个人!”
给你思路,初始化的时候,一次找出该IP投过的人员,然后把投过的CheckBox设置为不可用。
投票的时候,不可用的数目+打勾的数目控制为5(前台JS控制),超过就报消息“只能投5个人!”
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询