怎么实现每天每个 ip 有且只能投一票的功能

2015-05-09 17:29:33 +08:00
 caserest

我一朋友这么想 就是把每个投票的ip放到数据库中然后每天清理一下数据库实现每天只能投一票的功能。但是如何每天清理数据库呢?我觉得不靠谱,但是又想不到有什么其他好办法。

9804 次点击
所在节点    程序员
75 条回复
xiaozhizhu1997
2015-05-09 21:42:01 +08:00
现在NAT盛行...采用cookies似乎更合适。
ys0290
2015-05-09 21:50:56 +08:00
cookie过滤一遍,剩下的放服务器过滤
xjdrew
2015-05-09 22:18:06 +08:00
@shootsoft 思路正确。不过不需要crontab清理。redis自带expire,用来做这种定期cookie的
laoyuan
2015-05-09 22:21:21 +08:00
md5(ip.date(Ymd, time())
kslr
2015-05-09 22:56:57 +08:00
话说那些自动失效的,加个投票时间戳不就行了
reeco
2015-05-09 22:57:31 +08:00
大多数数据库支持事件的,不需要cron
issues
2015-05-09 23:01:21 +08:00
ip 不行 拨号用户可以重新拨号获取新ip, 当然cookie也不行,本地cookie可以删除。mac地址,当然要想真想搞刷票, mac也貌似也可以伪造。
issues
2015-05-09 23:03:42 +08:00
想要真正实现这样的不能刷票是很难的, 只有提升这种刷票的难度。难度大了,自然会放弃。
luw2007
2015-05-09 23:06:51 +08:00
每个登录用户只能投一票。
可以使用openauth接入qq,weibo的账户
wusuopuBUPT
2015-05-09 23:08:46 +08:00
zyue
2015-05-09 23:10:29 +08:00
redis 妥妥的
gladuo
2015-05-09 23:18:14 +08:00
面向普通人就cookies~

程序员投票还是微信吧~
xiaowangge
2015-05-09 23:43:07 +08:00
腾讯CMem 设置过期时间。
lwch
2015-05-09 23:48:43 +08:00
redis有条命令叫setex

http://cxx.party就是这么实现的。。
hello2t
2015-05-10 00:04:25 +08:00
redis存,key value 就好了,定时清理
zonghua
2015-05-10 00:11:36 +08:00
实名认证的登录
flowerwrong
2015-05-10 00:51:40 +08:00
@gdtv 淘宝分分钟刷哭你。
flowerwrong
2015-05-10 00:52:53 +08:00
TTL靠谱,最好配合cookie
Septembers
2015-05-10 01:00:58 +08:00
@em70
跟QQ OAuth绑到一起会更靠谱一些
一个QQ有效票数只能一次之类的
毕竟大规模注册QQ刷票是比较不现实的
如果基于IP的话去阿里云开1000个最低配的VPS一小时加高匿代理 不就一下刷起来了
crab
2015-05-10 01:13:46 +08:00
还是得靠验证码。
另外票数可以不公开,结束后才公开。想刷票的也没调试环境。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/189758

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX