整合UCenter 1.5.0 帝国退出显示 该用户未在本站激活,请重新登陆以激活帐号
在帝国登陆,然后退出,会显示“退出成功”,再显示“该用户未在本站激活,请重新登陆以激活帐号”
此提示出现在 /e/class/user.php islogin() 函数下
//--------------------------- Ucenter ---------------------------
if(getcvar('mldoactive')==$userid && $userid)
{
if(!getcvar('returnurl'))
{
esetcookie("returnurl",$_SERVER['HTTP_REFERER'],0);
}
if($ecmsreurl==1)
{
$gotourl="history.go(-1)";
$petype=9;
}
elseif($ecmsreurl==2)
{
$phpmyself=urlencode($_SERVER['PHP_SELF']."?".$_SERVER["QUERY_STRING"]);
$gotourl=$public_r['newsurl']."e/member/login/login.php?prt=1&from=".$phpmyself;
$petype=9;
}
//exit(getcvar('mldoactive').'=='.$userid.'=='.$gotourl);
printerror('该用户未在本站激活,请重新登陆以激活帐号',$gotourl,1,0,1);
}
这是帝国cms提供的整合程序的一个bug,没有判断用户ID 的情况下直接报错
改成if(getcvar('mldoactive')==$userid)
if(getcvar('mldoactive')==$userid && $userid)