您现在的位置是:网站首页>软件开发>开发终端>thinkphpthinkphp

tp5功能模块—-修改密码

风口下的猪2019-06-09thinkphp

简介

一.概述

tp5中的修改密码,在代码上和登录功能大体相似。代码设计上,多使用session中当前值作为参考,比如:1.比较原始密码是否正确,就需要在验证数据库中的admin_id字段下是否有当前session中的admin.admin_id的基础上,比较修改密码表单中输入的原始密码和数据库中的原始密码是否正确;2.修改数据库中当前用户admin_username对应的admin_password,需要用到save([更新涉及到的字段和对应的值],[修改数据对应的主键值])方法,在取当前主键值时就使用session(admin.admin_id)作为当前主键值。

二.说明

1.在修改密码时,验证主体,可通过rule()新增验证规则内容,再使用验证场景secene()获得含有新密码(new_password)和确认密码(confirm_password)是否一致的验证规则。

也可以使用独立验证,通过Validate实例化载入验证主体,获得验证工具。

$validate = newValidate([
'old_password' => 'require',
'new_password' => 'require',
'comfirm_password' => 'require|confirm:new_password'
],
[
'old_password.require'=>'请输入原始密码',
'new_password.require'=>'请输入新密码',
'comfirm_password.require'=>'请确认新密码',
'comfirm_password.confirm'=>'新密码确认前后不一致',
]
);

2.仍然注意数据库中的密码是加密的,所以,表单中的post数据要加密后和数据库中的信息进行比较;

3.在修改密码成功过后,需要使用session()清楚当前session中存的原来密码相关的session,然后才能success()到重新登录的登录界面

很赞哦! (0)

  • 软件开发
  • 素质要求
  • 计算机基础
  • 架构
  • 安全
  • 性能
  • 运维
  • 尾页
  • 数据库
  • 开发终端
  • 语言基础
  • 项目管理
  • 产品设计
  • 系统
  • 工作规范
  • 计算机网络
  • 前端技术栈
  • 数据结构
  • 计算机组成原理
  • 后端技术栈
  • 性能优化
  • 安全设计
  • 常见模块
  • 计算机操作系统
  • 服务器
  • python
  • MySQL
  • thinkphp
  • PHP
  • Java
  • JavaScript
  • Windows
  • Linux
  • 特效
  • indexedDB
  • vue
  • 淘宝联盟
  • Ionic
  • Angular
  • 微信小程序
  • 支付宝小程序
  • uni-app
  • css/sass/less
  • 支付
  • socket
  • 爬虫
  • web性能优化
  • 消息推送
  • CVM
  • sqlite
  • Redis
  • 前端基础
  • 基础
  • element
  • Nginx
  • yii2
  • /ponder/index.php/index/catelist/catelist/cateid/10.html

    相关阅读 (同一栏目)

    << /

    标签云

    站点信息

    • 文章统计:528篇
    • 移动端访问:扫码进入SQ3R