zoukankan      html  css  js  c++  java
  • Redis限制在规定时间范围内登陆错误次数限制

    //登录错误次数校验
    $key = "login_{$username}";
    $res = $this->_redisVerify($key,10,1800);//半小时内密码输入错误10次
    if(!$res){
         echo "手机号或密码错误次数过多,请稍后再试";
     }else{
         echo "手机号或密码错误";
     }
    /**
    * redis限制
    * @param $key : redis key
    * @param $times : 次数
    * @param $time : key有效时间
    * @return bool
    */
    private function _redisVerify($key,$times,$time = 86400){
            $redis = new Utils_Redis();
            $redis->select(11);//选择db 10
            $value = (int)$redis->get($key);
            if($value && $value < $times){//防刷次数
                $redis->increment($key);//如果有手机号键名,添加次数
            }elseif(!$value){
                $redis->set($key,1,$time);//设置TimeOut
            }elseif($value >= $times){
                return false;
            }
            return true;
    }
  • 相关阅读:
    local http
    redis 存储时间区间的数据
    json 和 jsonp
    ssdb 常用命令行
    php 冒泡排序
    pdo 函数
    异步的消息队列
    php 全局变量$_SERVER
    php 技能树
    get_called_class/get_class方法
  • 原文地址:https://www.cnblogs.com/yszr/p/10427063.html
Copyright © 2011-2022 走看看