• 0
  • 0

修复修改个人信息时字段设置为不可更改 导致无法初始化的bug

2021-03-20 697 0 admin 所属分类:Discuz

进入 spacecp_profile.php 

找到  178 行

if (isset($setarr[$key]) && $_G['cache']['profilesetting'][$key]['unchangeable']) {
    unset($setarr[$key]);
}

修改为 

if (isset($setarr[$key]) && (!$_G['member_' . $_G['uid'] . '_profile'] || $_G['member_' . $_G['uid'] . '_profile'][$key]) && $_G['cache']['profilesetting'][$key]['unchangeable']) {
    unset($setarr[$key]);
}


 如果后期 如 relaname字段强制为不可更改 会导致新增用户无法初始化realname 每次修改都被 unset掉 ,因此 检测到如果已经补充该信息的情况下才unset

返回顶部