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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已答复] HOME注册时用户名长度想超过15个字符,怎么处理?

[复制链接]
wangkuibin 发表于 2010-3-5 10:02:50 | 显示全部楼层 |阅读模式
HOME注册时用户名长度想超过15个字符,怎么处理?
另外只允许用中文注册用户名,怎么处理?
在线等,谢谢
玻璃屋女孩 发表于 2010-3-5 10:10:52 | 显示全部楼层
1、不建议修改,如果要修改的话要修改数据库中所有和用户名有关的数据表字段以及程序文件的限制,同时也不利于以后升级
2、可以到插件区找一下相关功能的插件
回复

使用道具 举报

 楼主| wangkuibin 发表于 2010-3-5 10:20:19 | 显示全部楼层
呵呵,改了半天,终于实现了,不知道有什么后遗证没?
一、数据库中涉及到USERNAME的字段值长度改为30.
二、修改template\default下的do_register文件中的函数
function checkUserName() {
                var userName = $('username').value;
                if(userName == lastUserName) {
                        return;
                } else {
                        lastUserName = userName;
                }
                var cu = $('checkusername');
                var unLen = userName.replace(/[^\x00-\xff]/g, "**").length;

                if(unLen < 3 || unLen > 30) {
                        warning(cu, unLen < 3 ? '用户名小于3个字符' : '用户名超过 30 个字符');
三、修改home\uc_client\model下USER.PHP中的函数
function check_username($username) {
        $guestexp = '\xA1\xA1|\xAC\xA3|^Guest|^\xD3\xCE\xBF\xCD|\xB9\x43\xAB\xC8';
                $len = strlen($username);
                if($len > 30 || $len < 3 || preg_match("/\s+|^c:\\con\\con|[%,\*\"\s\<\>\&]|$guestexp/is", $username)) {
                        return FALSE;
                } else {
                        return TRUE;
                }
        }
回复

使用道具 举报

玻璃屋女孩 发表于 2010-3-5 10:27:32 | 显示全部楼层
可以注册大于15个字符的会员试试能不能注册成功。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-28 00:42 , Processed in 0.019502 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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