300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > ThinkPHP执行调用存储过程怎么添加日志

ThinkPHP执行调用存储过程怎么添加日志

时间:2020-03-18 05:17:05

相关推荐

ThinkPHP执行调用存储过程怎么添加日志

php框架|ThinkPHP

thinkphp

php框架-ThinkPHP

动网 论坛 按时asp源码,c语言与ubuntu,自定义tomcat部署文件,爬虫遥控系统,php如何改背景颜色,seo营销矩阵lzw

ThinkPHP执行调用存储过程怎么添加日志

php 源码查询语句,vscode中智能输入,ubuntu新建.cpp,tomcat配置固定ip,任何地方运行sqlite3,flicker爬虫,php 优惠券系统,望江seo优化哪家强,简约文章系统网站源码,slightphp 模板lzw

//PHP代码部分/** * [LogAdd 操作日志] * @param [string] $userid[用户的ID] * @param [string] $type [类型] * @param [string] $controller_name [当前控制器的中文名称] * @param [string] $function_name [当前方法的中文名称] */function LogAdd($userid,$type,$controller_name,$function_name){ //组合数据 $data[userid] = $userid;//当前操作的用户 $data[ ype] = $type;//当前操作的类型 $data[url] = http://.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];//当前操作的URL地址 $data[controller] = CONTROLLER_NAME;//当前控制器的名称 $data[controller_name] = $controller_name;//当前控制器的中文名称 $data[function] = ACTION_NAME;//当前方法的名称 $data[function_name] = $function_name;//当前方法的中文名称 $data[ip] = getClientIP();//IP地址 $data[create_time] = date(Y-m-d H:i:s,time());//登录时间 //表名 $data_fun = _sys_logs_.date(Y,time()); //执行原生SQL $Model = M(); $results = $Model->query(show tables);//打开库 //组装为一维数组进行判断 foreach($results as $k=>$v){ $data_table_show[] = $v[ ables_in_dbwxapplite]; } //先判断是否存在表 if(in_array(strtolower($data_fun), $data_table_show)){//存在表直接添加日志 $loginLog = M($data_fun)->add($data); if($loginLog != false){ $res = [status => 1, esult => 写入成功,data => $loginLog]; }else{ $res = [status => , esult => 写入失败,data => $loginLog]; } }else{ //不存在表,先调用存储过程,在执行添加日志 $code = $Model->query("call spCreateTableSysLogs(".date(Y,time()).")"); if($code){ //存储过程成功则添加数据 $loginLog = M($data_fun)->add($data); if($loginLog != false){$res = [status => 1, esult => 写入成功,data => $loginLog]; }else{$res = [status => , esult => 写入失败,data => $loginLog]; } }else{ //失败 $res = [status => , esult => 存储过程调用失败,data => $loginLog]; } } return $res;}

//mysql脚本数据库部分-- ------------------------------ Table structure for t_sys_logs_-- ----------------------------DROP TABLE IF EXISTS `t_sys_logs_`;CREATE TABLE `t_sys_logs_` ( `logid` int(11) NOT NULL AUTO_INCREMENT COMMENT 日志ID, `userid` varchar(32) NOT NULL DEFAULT COMMENT 创建人ID, `type` varchar(8) NOT NULL COMMENT 日志操作类型,如:登录;注销;退出;修改密码;创建报名, `url` varchar(100) NOT NULL DEFAULT www COMMENT 当前操作的URL, `controller` varchar(30) NOT NULL DEFAULT 控制器的名称 COMMENT 当前控制器的名称, `controller_name` varchar(30) NOT NULL DEFAULT 控制器的中文名称 COMMENT 当前控制器的中文名称, `function` varchar(30) NOT NULL DEFAULT 方法的名称 COMMENT 当前方法的名称, `function_name` varchar(30) NOT NULL DEFAULT 方法的中文名称 COMMENT 当前方法的中文名称, `ip` varchar(30) NOT NULL DEFAULT 255.255.255.255 COMMENT 当前操作客户端IP, `create_time` timestamp NOT NULL DEFAULT 000-00-00 00:00:00 COMMENT 创建时间, `update_time` timestamp NOT NULL DEFAULT 000-00-00 00:00:00 ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (`logid`)) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT=操作日志表;

php 微分销源码,装ubuntu卡条,异步爬虫突破视频,php7.2 第三方组件加密,苏州seo管理lzw

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。