Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[反馈BUG] 登录后,后台设置的用户组发生改变的解决办法

[复制链接]
bigsea622 发表于 2011-4-5 17:21:53 | 显示全部楼层 |阅读模式
本帖最后由 bigsea622 于 2011-4-5 18:48 编辑

修改前程序会根据用户经验值,自动将用户分到某一个组,例如:新注册的用户,经验值为0,登录后将用户直接分到初级会员组。

修改后程序只根据“普通用户组”中的用户的经验值,将用户分到“普通用户组”中的某一组中。


function/common.func.php  中查找 2654 行


  1. if(!$gid) {

  2. if(empty($_SGLOBAL['supe_uid'])) getmember();
  3. if(empty($_SGLOBAL['member']['groupid'])) {
  4. $gid = 2; //游客组
  5. } else {
  6. $gid = intval($_SGLOBAL['member']['groupid']);
  7. $gid = getgroupid($_SGLOBAL['member']['experience'], $gid);
  8. if($gid != $_SGLOBAL['member']['groupid']) {
  9. updatetable('members', array('groupid'=>$gid), array('uid'=>$_SGLOBAL['supe_uid'])); //更新用户组
  10. }
  11. }
复制代码
改为
  1. if(!$gid) {

  2. @include_once(S_ROOT.'./data/system/group.cache.php');
  3. $g_sys = $_SGLOBAL['grouparr'][$_SGLOBAL['member']['groupid']]['system'];
  4. if(empty($_SGLOBAL['supe_uid'])) getmember();
  5. if(empty($_SGLOBAL['member']['groupid'])) {
  6. $gid = 2; //游客组
  7. } else {
  8. $gid = intval($_SGLOBAL['member']['groupid']);
  9. $gid = getgroupid($_SGLOBAL['member']['experience'], $gid);
  10. if($g_sys == 0){
  11. if($gid != $_SGLOBAL['member']['groupid']) {
  12. updatetable('members', array('groupid'=>$gid), array('uid'=>$_SGLOBAL['supe_uid'])); //更新用户组 // found by King // The bug of groupid change
  13. }
  14. }
  15. }
复制代码
 楼主| bigsea622 发表于 2011-4-5 17:30:01 | 显示全部楼层
有谁能加分,给加点分。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-28 08:34 , Processed in 0.020220 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表