/** * 提供修改密码功能 */ public function pwd() { if (IS_POST) { $oldpwd = Util::getSafeText(trim(I('post.oldpwd'))); $pwd = Util::getSafeText(trim(I('post.pwd'))); $repwd = Util::getSafeText(trim(I('post.repwd'))); if ($pwd != $repwd) { exit(Util::response(self::__ERROR__1, '两次输入密码不相同,请重新输入')); } //检查旧密码 $userAdminModel = D('Useradmin'); $row = $userAdminModel->getRow(array("id = {$this->userId}")); if ($row) { if (Util::genMd5Pwd($oldpwd) !== $row['passwd']) { exit(Util::response(self::__ERROR__2, '原密码校验错误')); } $res = $userAdminModel->updatePwd($pwd); $this->logWriter = $this->logWriter->action(LogsModel::ACT_UPDATE)->called(ltrim(__CLASS__, __NAMESPACE__) . '::' . __FUNCTION__)->exec($userAdminModel->_sql()); if ($res) { $this->logWriter->ok(); //注销 Util::setCookie('u', '', -1); exit(Util::response(self::__OK__, '更新密码成功,请重新登录')); } else { $this->logWriter->fail(); exit(Util::response(self::__ERROR__4, '更新密码失败')); } } else { exit(Util::response(self::__ERROR__3, '该用户不存在')); } } else { $this->pageTitle('修改密码'); $this->display(); } }
public function edit($id = 0) { $userModel = D('Useradmin'); if (IS_POST) { $uname = Util::getSafeText(trim(I('post.uname'))); $userpwd = Util::getSafeText(I('post.passwd')); $userrepwd = Util::getSafeText(I('post.repwd')); $avatar = Util::getSafeText(I('post.avatar')); $group = Util::getSafeText(I('post.group')) ? Util::getSafeText(I('post.group')) : 0; $blocked = Util::getSafeText(I('post.blocked')); //$expirtime = Util::getSafeText(trim(I('post.expirtime'))); //$nickname = Util::getSafeText(trim(I('post.nickname'))); // if (empty($uname) || empty($userpwd) || empty($userrepwd) || empty($group) || ($userpwd !== $userrepwd)) { // exit(Util::response(self::__ERROR__0, "参数错误!")); // } $data = array('uname' => $uname, 'passwd' => Util::genMd5Pwd($userpwd), 'avatar' => $avatar, 'blocked' => $blocked, 'createtime' => time(), 'expirtime' => time() + 100 * 12 * 30 * 24 * 3600); if (!$userpwd) { unset($data['passwd']); } $res = $userModel->updateRows($data, intval($id)); $this->logWriter = $this->logWriter->action(LogsModel::ACT_UPDATE)->called(ltrim(__CLASS__, __NAMESPACE__) . '::' . __FUNCTION__)->exec($userModel->_sql()); $userAdminModel = D('Useradmin'); if ($res) { $authGroupAccessModel = D('AuthGroupAccess'); $authGroupAccessModel->updateRows(array('group_id' => $group), array("uid" => intval($id))); $userAdminModel->updateUserInfo($id); $this->logWriter->ok(); exit(Util::response(self::__OK__, "修改用户成功!")); } else { $this->logWriter->fail(); exit(Util::response(self::__ERROR__2, "修改用户失败!")); } } else { $id = intval(Util::getSafeText(I('get.id'))); $authGroupModel = D('AuthGroup'); $groups = $authGroupModel->getAll(); $this->assign('groups', $groups); $authGroupAccessModel = D('AuthGroupAccess'); $row = $authGroupAccessModel->getRow(array("uid={$id}")); $group_id = $row['group_id']; $this->assign('groupId', $group_id); $map = array("id={$id}"); $user = $userModel->getRow($map); $this->assign('user', $user); $this->assign('isEdit', true); $this->pageTitle("修改用户"); $this->display('add'); } }
/** * 更改当前用户的密码 * @param string $newpwd 新密码(明码) * @return bool */ public function updatePwd($newpwd) { $uid = $this->isLogin(); $user = $this->getUserById($uid); //$cacheId = $this->mcPrefix . "uid:{$user['uname']}"; $uid = $this->isLogin(); $md5pwd = Util::genMd5Pwd(trim($newpwd)); $data = array('passwd' => $md5pwd); $res = $this->updateRows($data, intval($uid)); if ($res) { $this->mc->delete($this->mcPrefix . $uid); return true; } else { return false; } }
public function regedit() { if (IS_POST) { $uname = Util::getSafeText(trim(I('post.uname'))); $userpwd = Util::getSafeText(I('post.passwd')); $userrepwd = Util::getSafeText(I('post.repwd')); $group = Util::getSafeText(I('post.group')); $blocked = Util::getSafeText(I('post.blocked')) ? Util::getSafeText(I('post.blocked')) : 1; //$expirtime = Util::getSafeText(trim(I('post.expirtime'))); //$nickname = Util::getSafeText(trim(I('post.nickname'))); if (empty($uname) || empty($userpwd) || empty($userrepwd) || $userpwd !== $userrepwd) { exit(Util::response(self::__ERROR__0, "参数错误!")); } $data = array('uname' => $uname, 'passwd' => Util::genMd5Pwd($userpwd), 'blocked' => $blocked, 'createtime' => time(), 'expirtime' => time() + 100 * 12 * 30 * 24 * 3600); $userModel = D('Useradmin'); if ($userModel->where(array('uname' => $uname))->find()) { exit(Util::response(self::__ERROR__2, "用户名已存在!")); } $res = $userModel->addRow($data); if ($res) { $authGroupAccessModel = D('AuthGroupAccess'); $authGroupAccessModel->addRow(array('uid' => $res, 'group_id' => $group)); exit(Util::response(self::__OK__, "注册成功,等待管理员审核!")); } else { exit(Util::response(self::__ERROR__1, "注册失败!")); } } else { $authGroupModel = D('AuthGroup'); $groups = $authGroupModel->getAll(); $this->assign('groups', $groups); $this->assign('isEdit', false); $this->assign('addAction', U('regedit')); $this->display(); } }