From 6f7e0e6d00c3dde49ac8985fd67b75dbbf80dc1d Mon Sep 17 00:00:00 2001 From: wanghongjun <1445693971@qq,com> Date: Mon, 18 Sep 2023 16:06:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E9=99=A4=E7=BC=93=E5=AD=98=E5=85=88?= =?UTF-8?q?=E4=B8=8D=E5=88=A0=E9=99=A4=E6=95=B0=E6=8D=AE=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E5=AF=86=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/AdminUser.php | 10 ++++++++++ app/model/AdminUser.php | 14 ++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/app/controller/AdminUser.php b/app/controller/AdminUser.php index 0c7fbf0..c6318f8 100644 --- a/app/controller/AdminUser.php +++ b/app/controller/AdminUser.php @@ -137,6 +137,16 @@ class AdminUser extends BaseController */ public function clean() { + $password = Request::param('password'); + if (empty($password)) return $this->renderError('密码不能为空'); + + $adminData = $this->request->userInfo; + + $AdminUser = new AdminModel(); + $validatePassword = $AdminUser->validatePassword($adminData['id'],$password); + if (!$validatePassword['status']) return $this->renderError($validatePassword['msg']); + + return $this->renderSuccess('已清除成功'); # 获取所有表名 $tables = Db::query('SHOW TABLES'); $tablesNameArr = []; diff --git a/app/model/AdminUser.php b/app/model/AdminUser.php index 33cfd7f..1ce54f9 100644 --- a/app/model/AdminUser.php +++ b/app/model/AdminUser.php @@ -72,6 +72,20 @@ class AdminUser extends Model return $AdminUser->id; } + public function validatePassword($id,$password) + { + $AdminUser = new AdminUser(); + $AdminUser = $AdminUser->find($id); + + + // 使用相同的盐值对输入密码进行哈希验证 + $hashedPassword = $this->generateHashedPassword($password, $AdminUser->salt); + + if ($AdminUser->password !== $hashedPassword) return ['status' => false, 'msg' => '密码错误']; + + return ['status' => true]; + } + /** * 生成密码 * @param $password