|
蓝森林 http://www.lslnet.com 2006年8月25日 8:28
[asp]关于投票系统投票限制的问题
我刚开始学ASP.自己也做了个投票系统,发现许多投票系统都可以限制不让一个人投多次票
想问问是用什么实现的?是session?还是cookies?
忘高手给个代码的例子.
|
ip限制也可以 |
一个局域网中的机器若干台,得到的ip显示的都是代理服务器的ip地址。这又怎么解决呢? |
在数据库里记录
如果该用户已经投过就不能再投
如果是匿名投票的话就不好办, |
不如就在SESSION中设置吧.让他在线的时候不能多投
想多投就关掉浏览器再上(万一他不怕麻烦怎么办啊?晕)
看来只有cookies了.
还不会写.学习!!!学习!!!!!!!!!!!!!! |
建议用cookies session对于投票来说不实际
思路:
用户投票之后转到一个投票成功的页面并在该页面创建1个cookies
response.cookies("name")="1"
并且设置过期时间 Response.Cookies("CookieName")=Date+多少天
上面date是创建日期
判断是否投票就很简单判断 名字为name的cookies的值是否等于1 若不等于1可以投票,若等于1则表示已经投过,自己处理一下隐藏掉按扭或者转到某页无按扭的页面直接显示投票结果 |
楼上的如果是匿名投票呢?
如果用cokkies来记录他的IP地址这样可以吗?不过这样心开风神说的局域网的问题也许就会出现了。 |
把他的IP得到,存入数据库,在数据库中进行查询,如果投过,就不计入投票,反之,计入,我这有个完整的代码,需要的话,发给你。[email]xierenserver@126.com[/email] |
用COOKIES来限制投票比较好,我用过限制IP的,有的地方只要重新上线就会换一回IP地址,根本不行。 |
心开风神在上个帖子中说
如果要严格限制,只能用IP,虽然有你说的这个问题,新浪的投票是也这样做的! |
|