DedeCMS注册用户名笔名长度及特殊字符限制修改

       DedeCMS能借助UC与DZ、ECshop等多平台账号同步整合,但默认对用户名的字符和字符长度有一定的限制,比如我们注册使用的是test_123-404668925@qq.com是不支持的,会有错误提示“不能含有 [@]、[.]、[-]以外的特殊符号!”。实现支持其他符号,笔者仔细找了一下源文件,下面做啦做啦提供修改方法。

增加或修改特殊字符

       打开/include/memberlogin.class.php,找到

if(preg_match("/[^0-9a-z@\.-]/i",$ck_uid[$i]))
{
 return $msgtitle.'不能含有 [@]、[.]、[-]以外的特殊符号!';
 }

       比如增加符号“_”、“*”,修改为

if(preg_match("/[^0-9a-z@\.\-\_\*]/i",$ck_uid[$i]))
{
return $msgtitle.'不能含有 [@]、[.]、[-]、[_]、[*]以外的特殊符号!';
}

修改用户名字符长度

       DedeCMS是支持中文的,网上就出现过xx有限公司太长了,营业发票抬头超过24个字,后面的就显示不全。DedeCMS默认的用户名是20个字节,笔名为36个字节。

       打开/member/reg_new.php,找到下面代码,根据实际情况修改即可。

if(strlen($userid) > 20|| strlen($uname) >36 

数据库修改

       一般空间都有数据库管理,找到dede_member表,将userid、uname两个字段改为想要的字段长度即可。个人用户只需要修改dede_member这个表,企业用户需要修改dede_member_company。