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

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/cb02126f6dd49f4e20a0ed28b45bdfec.html