内容简介:微信实验十二、ThinkPHP5.0单页浏览、增加、修改、删除用户及源码下载
一、实验目的
1、掌握ThinkPHP5.0用户浏览、增加、修改和删除功能。
二、实验内容
1、建立ThinkPHP5.0用户浏览页面,且包括删除功能。
2、建立ThinkPHP5.0用户增加和修改页面。
三、实验步骤及过程
常用模块具有的功能包括:浏览、删除、修改、增加等功能,我们在ThinkPHP5.0时候,应灵活掌握这些基本功能,以下我们将介绍如何实现这些功能。
1 、创建浏览、增加、修改、删除界面
用户登录后,进入http://127.0.0.1/noneCms/public/index.PHP/weixin/index/index.HTML主界面,单击公众号用户,则进入了微信用户信息管理界面,包括用户信息浏览、删除、增加、修改几个功能,如图所示。
2 、关键代码解析
用户通过登录页面http://127.0.0.1/noneCms/public/index.PHP/weixin/login/index进入后台管理模块,http://127.0.0.1/noneCms/public/index.PHP/weixin/index/index为用户登录之后后台管理主页面。然后,用户单击“公众号用户”,则进入用户管理界面,即http://127.0.0.1/noneCms/public/index.PHP/weixin/users/index。在该界面可以操作用户信息,包括浏览、添加、删除、修改等操作。
Users为用户管理控制模块,其文件为Users.PHP,即通过http://127.0.0.1/noneCms/public/index.PHP/weixin/users/index调用weixin模块的users控制器中的index方法进入用户浏览页面,用户登录之后主页面为http://127.0.0.1/noneCms/public/index.PHP/weixin/index/index。
1)Users.PHP文件
Users.PHP是users控制器文件,其中index()方法显示用户管理页面,add()方法完成用户信息增加,edit()方法完成用户信息修改,dele()方法完成用户信息删除,代码如下:
/** *单页控制器 */ namespace app/weixin/controller; use app/weixin/model/Category; use think/Config; use think/Db; use think/Loader; class Users extends Common{ public function index(){ $list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('islock','neq',3)->select(); //$list = Db::name('user')->field('nickname,last_login_time,id,last_login_ip,email,status,phone')->where('status','eq',1)->select(); $this->assign('list', $list); return $this->fetch(); } /* *添加用户 */ public function add(){ if (request()->isPost()) { //修改处理 $params = input('post.'); $data = [ 'username' => $params['user_name'], 'password' =>$params['password'], 'email' => $params['email'], 'phone' => $params['phone'], 'islock' => $params['islock'], 'repassword' => $params['repassword'] ]; //验证规则 $validate = Loader::validate('UsersAdd'); if (isset($params['id'])) { //更新操作 if($params['old_password']){ $info = Db::name('user')->field('password,encrypt')->find($params['id']); $password = get_password($params['old_password'],$info['encrypt']); if($info['password'] != $password){ exit(json_encode(['status' => 0, 'msg' => '原密码不正确', 'url' => ''])); } } if(!$validate->scene('edit')->check($data)){ $error = $validate->getError(); exit(json_encode(['status' => 0, 'msg' => $error, 'url' => ''])); } $data['encrypt'] = get_randomstr();//6位hash值 $data['password'] = get_password($data['password'],$data['encrypt']); unset($data['repassword']); $flag = Db::name('user')->where('id',$params['id'])->update($data); if ($flag) { exit(json_encode(['status' => 1, 'msg' => '修改成功', 'url' => url('users/index')])); } else { exit(json_encode(['status' => 0, 'msg' => '修改失败,请稍后重试', 'url' => ''])); } }else{ //新增 if(!$validate->check($data)){ $error = $validate->getError(); exit(json_encode(['status' => 0, 'msg' => $error, 'url' => ''])); } unset($data['repassword']); $data['encrypt'] = get_randomstr();//6位hash值 $data['password'] = get_password($data['password'],$data['encrypt']); $data['logintime'] = time(); $data['createtime'] = time(); $data['loginip'] = request()->ip(); $data['username'] = $params['user_name']; $data['phone'] = $params['phone']; $flag=Db::name('user')->insert($data); if ($flag) { exit(json_encode(['status' => 1, 'msg' => '添加成功', 'url' => url('users/index')])); } else { exit(json_encode(['status' => 0, 'msg' => '添加失败,请稍后重试', 'url' => ''])); } } } else { return $this->fetch(); } } /** *修改用户信息 */ public function edit($id){ $data = Db::name('user')->find($id); $this->assign('data', $data); return $this->fetch(); } /** *删除用户信息 */ public function dele(){ $id = input('param.id/d',0); $flag = Db::name('user')->where(['id' => $id])->update(['islock' => 3]); if ($flag) { echo '删除成功'; } else { echo '删除失败'; } } }
2)validate/UsersAdd.PHP验证文件
该文件辅助users控制器的add()和edit()方法验证用户输入的数据,在Users.PHP文件中采用代码$validate = Loader::validate('UsersAdd');调用UsersAdd验证器验证。
UsersAdd.PHP文件如下所示。
class UsersAdd extends Validate { protected $rule =[ 'username'=> 'require|max:25|min:4', 'email' => 'email', 'password' => 'require|max:25|min:6', 'repassword'=>'require|confirm:password' ]; protected $message=[ 'username.require' => '用户名必须', 'username.max'=> '用户名最多不能超过25个字符', 'username.min'=> '用户名最少4个字符', 'password.require'=> '密码必须', 'password.min'=> '密码长度至少六位', 'email'=> '邮箱格式错误', //'repassword.require' => '确认密码必须', 'repassword.confirm' => '两次密码必须一致' ]; /** *验证场景 */ protected $scene = [ 'edit'=>['name','repassword'=>'confirm:password'], ]; }
以上所述就是小编给大家介绍的《微信实验十二、ThinkPHP5.0单页浏览、增加、修改、删除用户及源码下载》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- AOSP 源码下载
- WebRTC 源码下载
- 下载编译AOSP源码
- 74款Android完整项目源码打包下载!
- 74款Android完整项目源码打包下载!
- JS实现导出Excel的五种方法详解【附源码下载】
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
密码学概论(中文版)
wade trappe、lawrence C.washington / 特拉普 / 人民邮电出版社 / 2004-6-1 / 38.00
本书全面讲解了密码学基本知识以及相关的基础数学理论,介绍了椭圆曲线、AES和量子密码体制等密码学前沿知识,详细地阐述了数字签名、数字现金等应用问题。另外,书中每章均给出了相应的习题,在附录中给出了相关Mathematica、Maple和 MATLAB实例。 本书可供高等院校就用数学、通信和计算机等专业用作密码学、通信安全和网络安全等课程的教材或参考书,也可供信息安全系统设计开发人......一起来看看 《密码学概论(中文版)》 这本书的介绍吧!