dede限制注册 用户登陆提示不合法的解决方法

系统的原意是限制注册,但是已经注册过的用户名却也无法登录了,管理员也无法在前台登录!如果在登录时检查,那么就会有admin这样的用户名无法登录会员中心!怀疑是程序BUG!后来又仔细分析了程序,发现不是先前修改的那一段程序的问题,而是一个思路问题。

  在include/memberlogin.class.php文件中,找到以下代码,删除。

        if($cfg_mb_notallow != '')
        {
            $nas = explode(',',$cfg_mb_notallow);
            if(in_array($uid,$nas))
            {
                return $msgtitle.'为系统禁止的标识!';
            }
        }
复制代码

再找到以下代码:

    if($ckhas)
    {
        $row = $dsql->GetOne("Select * From `dede_member` where userid like '$uid' ");
        if(is_array($row)) return $msgtitle."已经存在!";
    }
复制代码

改为:

    if($ckhas)
    {
        if($cfg_mb_notallow != '')
        {
            $nas = explode(',',$cfg_mb_notallow);
            if(in_array($uid,$nas))
            {
                return $msgtitle.'为系统禁止的标识!';
            }
        }
        $row = $dsql->GetOne("Select * From `dede_member` where userid like '$uid' ");
        if(is_array($row)) return $msgtitle."已经存在!";
    }
复制代码

  修改后admin登录出现提示:管理员帐号不能从前台登录,这是正确的提示,这样就解决了修改了限制注册的信息后,以前注册的用户不能登录的问题!

注明:本文为星速云原创版权所有,禁止转载,一经发现将追究版权责任!

(0)
上一篇 2022年5月30日 上午3:52
下一篇 2022年5月30日 上午3:52

相关推荐

发表评论

登录后才能评论
问答社区 QQ客服
微信客服
微信客服
分享本页
返回顶部