分享

redis计数

 昵称28012971 2015-09-30
 ///////////////////////////  避免重复添加评论  判断在1分钟内发起5次评论,界定成评论太频繁
       $ip = Search::getClientIp();
       $conn = "user";
       $key = $ip.'_news_comment';
       $recv = $uid;
       $time_ago = MRedis::hGet($conn, $key, $recv);
       $incr = $ip.'_news_comment_'.$uid;
       //判断是否60秒内的操作
       if( (G_TIME - $time_ago) < 60){
           $curr_index = MRedis::incr($conn,$incr,1);
           if( $curr_index > 5){
               MRedis::hSet($conn, $key, $recv,G_TIME,10);
               //删除无效评论
               $where = array(
                  'uid'=>$uid,
                  'news_id'=>$news_id,
                  'add_time'=>array('egt',$time_ago-10)
               );
               $del_comment = News_comment::del($where);
               html_json_exit(501,'评论信息太频繁');
           }
       }else{
           $curr_index = MRedis::incr($conn,$incr);
           MRedis::incr($conn,$incr,-$curr_index);
       }
       $rt = MRedis::hSet($conn, $key, $recv,G_TIME,10);
       /////////////////////////////

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约