温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

thinkPHP3.2 记录后台管理员的操作日志

发布时间:2020-07-06 04:38:58 来源:网络 阅读:6956 作者:lizhengchen 栏目:web开发
  1. 封装的公共方法,【思路从auth_rule表(权限节点表)中读取节点名称】:

DROP TABLE IF EXISTS `cgw_logs`;

CREATE TABLE `cgw_logs` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `url` varchar(300) NOT NULL COMMENT '操作的url',

  `operator` varchar(225) NOT NULL COMMENT '操作管理员名',

  `description` char(200) NOT NULL COMMENT '操作行为描述',

  `operate_time` int(10) NOT NULL COMMENT '执行时间',

  `ip` varchar(300) NOT NULL COMMENT '执行ip地址',

  `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '0:操作成功    1:操作失败',

  PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=246 DEFAULT CHARSET=utf8 COMMENT='系统日志表';


//记录管理员用户的行为日志信息

function action_log($info='',$userid='',$status=true){

$data['url'] = substr(__ACTION__, strpos(__ACTION__, 'index.php')+strlen('index.php')+1);

$data['url']=strtolower($data['url']);

$data['operator'] =empty($userid)?getadminname($_SESSION["ADMIN_ID"]):getadminname($userid);

$data['operate_time'] = NOW_TIME;

$data['ip']=get_client_ip();

$node = M('auth_rule')->where(array('name'=>$data['url']))->find();//查找节点名称

if($status){

 $data['status']=0;

}else{

 $data['status']=1;

}

if(!empty($node) || !empty($info)){

if($info){

 $data['description']=$info;

}else{

 $data['description'] = $node['title'];

}

$data['url']=__ACTION__;

M('logs')->add($data);//记录日志

}

 }


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI