系统默认用户名长度为15字节,有点少,网上搜了一些破除办法,基本可用,但是做到完美必须修改以下几十处才有效:
\api\manyou\Service\Connect.php (1 hit)
L:612 return cutstr($username, 15, '');
\install\data\install.sql (86 hits)
L:124 admin varchar(15) NOT NULL DEFAULT '',
L:163 admin varchar(15) NOT NULL DEFAULT '',
L:487 username varchar(15) NOT NULL DEFAULT '',
L:528 author varchar(15) NOT NULL DEFAULT '',
L:622 username char(15) NOT NULL DEFAULT '',
L:713 operator varchar(15) NOT NULL,
L:921 admin varchar(15) NOT NULL DEFAULT '',
L:1003 username char(15) NOT NULL DEFAULT '',
L:1121 username varchar(15) NOT NULL DEFAULT '',
L:1125 opname varchar(15) NOT NULL DEFAULT '',
L:1168 username char(15) NOT NULL DEFAULT '',
L:1511 admin varchar(15) NOT NULL DEFAULT '',
L:1644 author varchar(15) NOT NULL DEFAULT '',
L:1964 username varchar(15) NOT NULL DEFAULT '',
L:1977 lastposter varchar(15) NOT NULL DEFAULT '',
L:1991 username varchar(15) NOT NULL DEFAULT '',
L:2004 username char(15) NOT NULL DEFAULT '',
L:2033 username varchar(15) NOT NULL DEFAULT '',
L:2051 fromto char(15) NOT NULL DEFAULT '',
L:2071 umpire varchar(15) NOT NULL DEFAULT '',
L:2230 author char(15) NOT NULL,
L:2292 username char(15) NOT NULL,
L:2390 admin char(15) NOT NULL DEFAULT '',
L:2432 username varchar(15) NOT NULL DEFAULT '',
L:2445 author varchar(15) NOT NULL DEFAULT '',
L:2519 author varchar(15) NOT NULL DEFAULT '',
L:2562 username char(15) NOT NULL DEFAULT '',
L:2570 username char(15) NOT NULL DEFAULT '',
L:2608 author char(15) NOT NULL DEFAULT '',
L:2643 author char(15) NOT NULL DEFAULT '',
L:2648 lastposter char(15) NOT NULL DEFAULT '',
L:2753 username char(15) NOT NULL DEFAULT '',
L:2816 seller char(15) NOT NULL,
L:2831 lastbuyer char(15) NOT NULL,
L:2861 rater char(15) NOT NULL,
L:2863 ratee char(15) NOT NULL,
L:2889 seller varchar(15) NOT NULL,
L:2893 buyer varchar(15) NOT NULL,
L:2972 operator char(15) NOT NULL,
L:2974 author char(15) NOT NULL,
L:2988 username varchar(15) NOT NULL DEFAULT '',
L:3043 username char(15) NOT NULL DEFAULT '',
L:3135 username varchar(15) NOT NULL DEFAULT '',
L:3151 author varchar(15) NOT NULL DEFAULT '',
L:3178 username varchar(15) NOT NULL DEFAULT '',
L:3192 username varchar(15) NOT NULL DEFAULT '',
L:3234 username varchar(15) NOT NULL DEFAULT '',
L:3269 username varchar(15) NOT NULL DEFAULT '',
L:3296 username char(15) NOT NULL DEFAULT '',
L:3298 fusername char(15) NOT NULL DEFAULT '',
L:3310 username varchar(15) NOT NULL DEFAULT '',
L:3322 username varchar(15) NOT NULL DEFAULT '',
L:3334 fusername varchar(15) NOT NULL DEFAULT '',
L:3348 fusername char(15) NOT NULL DEFAULT '',
L:3373 author varchar(15) NOT NULL DEFAULT '',
L:3389 username varchar(15) NOT NULL DEFAULT '',
L:3436 fromusername varchar(15) NOT NULL DEFAULT '',
L:3463 username varchar(15) NOT NULL DEFAULT '',
L:3493 username varchar(15) NOT NULL DEFAULT '',
L:3505 username varchar(15) NOT NULL DEFAULT '',
L:3510 opusername varchar(15) NOT NULL DEFAULT '',
L:3546 vusername char(15) NOT NULL DEFAULT '',
L:3732 author char(15) NOT NULL DEFAULT '',
L:3768 username varchar(15) NOT NULL DEFAULT '',
\install\include\install_lang.php (1 hit)
L:154 'admin_username_invalid' => '非法用户名,用户名长度不应当超过 15 个英文字符,且不能包含特殊字符,一般是中文,字母或者数字',
\source\class\class_member.php (1 hit)
L:462 } elseif($usernamelen > 15) {
\source\language\lang_admincp.php (2 hits)
L:224 'profile_username_toolong' => '抱歉,您的用户名超过 15 个字符,请输入一个较短的用户名',
\source\language\member\lang_template.php (1 hit)
L:51 'register_username_tips' => '用户名由 3 到 15 个字符组成',
\source\module\forum\forum_ajax.php (2 hits)
L:22 } elseif($usernamelen > 15) {
\source\module\member\member_connect_register.php (1 hit)
L:124 return cutstr($username, 15, '');
\source\plugin\myrepeats\install.php (1 hit)
L:19 `username` varchar(15) NOT NULL DEFAULT '',
\static\js\register.js (2 hits)
L:269 if(unlen < 3 || unlen > 15) {
L:270 errormessage(id, unlen < 3 ? '用户名不得小于 3 个字符' : '用户名不得超过 15 个字符');
\template\default\member\register.htm (1 hit)
L:125 <td><input type="text" id="{$this->setting['reginput']['username']}" name="" class="px" tabindex="1" autocomplete="off" size="25" maxlength="15" required /></td>
\template\default\mobile\member\register.htm (1 hit)
L:13 <label><strong>{lang username}*</strong><input type="text" id="username" name="{$_G['setting']['reginput']['username']}" autocomplete="off" size="25" maxlength="15" value="" class="txt" /></label>
\uc_client\model\user.php (1 hit)
L:44 if($len > 15 || $len < 3 || preg_match("/\s+|^c:\\con\\con|[%,\*\"\s\<\>\&]|$guestexp/is", $username)) {
\uc_server\install\lang.inc.php (1 hit)
L:131 'admin_username_invalid' => '非法用户名,用户名长度不应当超过 15 个英文字符,且不能包含特殊字符,一般是中文,字母或者数字',
\uc_server\install\uc.sql (13 hits)
L:24 username char(15) NOT NULL DEFAULT '',
L:122 admin varchar(15) NOT NULL default '',
L:160 username varchar(15) NOT NULL default '',
L:185 username char(15) NOT NULL default '',
L:213 username char(15) NOT NULL default '',
L:216 admin char(15) NOT NULL default '0',
L:223 username char(15) NOT NULL,
L:242 charset varchar(15) NOT NULL,
\uc_server\model\user.php (1 hit)
L:44 if($len > 15 || $len < 3 || preg_match("/\s+|^c:\\con\\con|[%,\*\"\s\<\>\&]|$guestexp/is", $username)) {
更改15为32,就将用户名长度限制改为32了。
改完还要重装一下Discuz。
如果用外置ucenter的还要更改ucenter中member表的相关字段
Ucenter表
Table :admins
username
Table :badwords
Table :feeds
username
Table :members
username
Table :mergemembers
username
Table :pms
msgfrom
Table :protectedmembers
username
admin
|