PHP代码限制pc打开,php - pc端 限制用户登陆次数!

该博客讨论了如何利用全局缓存(如Redis、Memcache或MySQL)来管理用户的登录次数。提出了两种方法:一是通过键值对存储用户登录信息,并在缓存中进行自增操作;二是直接在数据库的登录信息表中增加登录次数列并进行更新。还提到了考虑时间维度的处理方式,包括设置超时时间以重置登录次数。
摘要由CSDN通过智能技术生成

小葫芦2017-05-31 10:35:271楼

像你这种情况,只能通过全局缓存来处理了。如果你要控制某用户名的登录次数,那么就

1.针对keyvalue缓存

统一数据结构key=value => 用户名={'登录次数':1},接下来无论用redis、memcache、mysql(建cache表,列[key value],索引hash key)

直接$userinfo = $cacheobj->get('用户名')获取用户信息,判断登录次数,自增登录次数后$cacheobj->set('用户名', $userinfo)回写

2.纳入到数据库登录信息表结构

给mysql用户登录表新增登录次数列,然后就是调用sql,获取,判断,自增,更新就欧了

如果要含时间纬度,那么

1.针对keyvalue缓存

数据结构更新为用户名={'登录次数':1, '超时时间':时间戳},判断再加时间纬度的判断,超时将登录次数置为0

2.针对非mysql的keyvalue缓存(redis、memcache)

直接$cacheobj->set('用户名', '登录次数', 超时时间)

3.纳入到数据库登录信息表结构

这样子的话就再加一列超时时间

实现的方法无数种,主要看实际场景和资源。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值