$name, 'password' => $password, ]; $validate = Loader::validate('Admin'); if (!$validate->scene('login')->check($data)) { return [ 'code' => $code, 'msg' => $validate->getError(), 'data' => [], ]; } // 获取用户信息. $adminInfoWhere['admin_name'] = $name; $adminInfoWhere['admin_status'] = 1; $getAdminInfo = $this ->field('admin_name, admin_identity, admin_phone, admin_nickname, admin_salt, admin_password') ->where($adminInfoWhere) ->find(); $adminSalt = $getAdminInfo['admin_salt']; // print_r(md5(md5($adminSalt.$password)));exit; // 验证密码. if (md5(md5($adminSalt.$password)) !== $getAdminInfo['admin_password']) { return [ 'code' => $code, 'msg' => lang('EA01001'), 'data' => [], ]; } // 存储用户信息. $adminInfo = [ 'adminName' => $getAdminInfo['admin_name'], 'adminId' => $getAdminInfo['admin_identity'], 'adminNick' => $getAdminInfo['admin_nickname'], 'lastOperation' => time(), ]; session('admin', $adminInfo); // 修改最后操作信息. $upData = [ 'admin_last_time' => time(), 'admin_last_ip' => $_SERVER['REMOTE_ADDR'], ]; $upAdmin = $this ->where($adminInfoWhere) ->update($upData); return [ 'code' => 1, 'msg' => lang('MA01001'), 'data' => [], ]; }//end login() /** * 退出登陆 */ public function logout() { Session::delete('admin'); return [ 'code' => 1, 'msg' => lang('MA01003'), 'data' => [], ]; }//end logout() /** * 修改用户密码 */ public function updatePassword() { $code = -2; // 验证传参. $param = input('get.'); $oldPassword = $param['oldPassword']; $newPassword = $param['newPassword']; $data = [ 'oldPassword' => $oldPassword, 'newPassword' => $newPassword, ]; $validate = Loader::validate('Admin'); if (!$validate->scene('updatePassword')->check($data)) { return [ 'code' => $code, 'msg' => $validate->getError(), 'data' => [], ]; } // 获取管理员信息. $adminInfo = session('admin'); $conditions_admin['admin_identity'] = $adminInfo['adminId']; // 查询用户. $adminInfo = $this ->field('admin_salt, admin_password') ->where($conditions_admin) ->find(); // 验证旧密码. $adminSalt = $adminInfo['admin_salt']; if (md5(md5($adminSalt.$oldPassword)) !== $adminInfo['admin_password']) { return [ 'code' => $code, 'msg' => lang('EA01006'), 'data' => [], ]; } // 修改密码. $newPasswordData = GenPassword($newPassword); $updateData = [ 'admin_password' => $newPasswordData['password'], 'admin_salt' => $newPasswordData['encryption'], ]; $getAdminInfo = $this ->where($conditions_admin) ->update($updateData); if (empty($getAdminInfo) === true) { return [ 'code' => $code, 'msg' => lang('EC01002'), 'data' => [], ]; } else { $code = 1; return [ 'code' => $code, 'msg' => lang('MC01004'), 'data' => [], ]; } }//end updatePassword() }