| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 457 人关注过本帖
标题:请教:设置一个IP只能投5人的票。谢谢(希望可以大家直接写出代码来哦)
只看楼主 加入收藏
无剑侠
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-7-26
结帖率:0
收藏
已结贴  问题点数:20 回复次数:7 
请教:设置一个IP只能投5人的票。谢谢(希望可以大家直接写出代码来哦)
一个用户,或者一个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")
%>
搜索更多相关主题的帖子: 代码 
2010-07-26 20:42
无剑侠
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-7-26
收藏
得分:0 
就没人回答吗?
2010-07-26 21:54
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:6 
发这些文件不够吧,文件不够的地方测试的人都得自己建立的!没有数据库要自己建,没有连接代码要自己改。累啊。

先给你提个思路吧,你既然可以做到,实现一个IP对同一候选人只能投一次,那么可以在原表上多加一个累积字段,每投一个,该字段加1,到5的时候自动停止投票权利即可!

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-07-26 23:32
魏兴耀
Rank: 8Rank: 8
来 自:江西
等 级:蝙蝠侠
威 望:3
帖 子:246
专家分:840
注 册:2009-11-9
收藏
得分:6 
版主的回答不好吗?

只有大胆尝试,才有机会得到想要的成功
2010-07-27 07:54
hams
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:18
帖 子:912
专家分:3670
注 册:2008-7-30
收藏
得分:6 
看这个选题,我的思路是:

数据表
投票人IP--被投人ID
201.103.222.1--5
201.103.222.1--8
……

每次投票前,搜索两个数据进行验证
1、这个IP的记录行数,判断是5还是其它的都可以
2、这个IP的被投票人ID,如果和正在投票的相同则报错

另外还可增加一个时间字段,因为很多IP是动态的,一般我们设同一天同一IP不能重复投票就可以了,不必永远不能投,所以,设时间字段,过期之后可以删掉。

再一个,个人认为,还是结合COOKIES来做比较好。

俺不高手,俺也是来学习的。
俺的意见不一定就对,当你不认同时请点忽视按钮。
当走到十字路口不知该如何走时,可在论坛问下路,但你若希望别人能一路把你送到目的地,显然是不现实的,因为别人也有自己要走的路。
2010-07-27 09:05
无剑侠
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-7-26
收藏
得分:0 
还是不太明白。。。我是想如果大家能够直接帮我写一段话,我直接插入到我的代码里就好啦。。谢谢啊。。我技术实在太烂。。。因为这个投票系统也是我从网上下载的。
2010-07-27 10:28
无剑侠
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-7-26
收藏
得分:0 
顶一下。。。
2010-07-27 17:35
hams
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:18
帖 子:912
专家分:3670
注 册:2008-7-30
收藏
得分:0 
思路已经说得很清楚了,自己学习一下吧。

俺不高手,俺也是来学习的。
俺的意见不一定就对,当你不认同时请点忽视按钮。
当走到十字路口不知该如何走时,可在论坛问下路,但你若希望别人能一路把你送到目的地,显然是不现实的,因为别人也有自己要走的路。
2010-07-28 09:01
快速回复:请教:设置一个IP只能投5人的票。谢谢(希望可以大家直接写出代码来哦)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027498 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved