十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、可以用MySQL 或者用Nosql记录 新建一个投票IP的数据表,字段是IP,投票次数;
创新互联专业为企业提供泉港网站建设、泉港做网站、泉港网站设计、泉港网站制作等企业网站建设、网页设计与制作、泉港企业网站模板建站服务,10余年泉港做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
2、每次用户投票时,搜索表是否存在该IP:
i、 如果不存在新增一条记录,
ii、否则判断访问次数是否大于3次:
1) 没有更新访问次数;
2)大于3次就return false;
3、弊端:当然这种情况不能避免使用代理来刷票的情况。
建议:用Nosql比较好,高并发,实时性好。
在数据库里专门建一个表,用来存储当天已投过票的id和文章id。
每次投票时都先查询同时拥有该用户id和文章id的项是否存在,如果在的话就提示“一篇文章一个id一天只能投一次”
投票的时候见ip 和投票时间存入数据库,
存入数据库的时候判断该ip在数据库中是否存在,
如果不存在就第一次,可以进去,
如果存在,就取出数据库中那条数据的时间来判断是否是当天的时间,
如果不是当天的时间,就把现在投票的数据存进去,
如果是当天的时间,就不能把数据存进去,提示你今天已经投过票了,