已解决 新增用户提示“『用户名』只能是字母和数字的组合三位以上。”

新增用户提示“『用户名』只能是字母和数字的组合三位以上。”

我们原来系统里面,部分用户名是两个字母的,为了新老系统对接,新建立账号也必须要是两位的,但是会提示这个。

=============================

尝试修改方法:

lib/base/filter/filter.class.php

找到函数,修改正则规则

public static function checkAccount($var)

{
  global $config;
  $accountRule = empty($config->accountRule) ? '|^[a-zA-Z0-9_]{1}[a-zA-Z0-9_\.]{1,}[a-zA-Z0-9_]*$|' : $config->accountRule;

  //修改前为  |^[a-zA-Z0-9_]{1}[a-zA-Z0-9_\.]{1,}[a-zA-Z0-9_]{1}$|

   return self::checkREG($var, $accountRule);
}

测试没有效果。

==============================

测试方法2.

在所有文件里面搜索“只能是字母和数字的组合三位以上”字符串,找到

module/common/lang/zh-cn.php:493:$lang->error->account         = "『%s』只能是字母和数字的组合三位以上。";

将该字符串修改为

$lang->error->account         = "『%s』33333333333的组合三位以上。";

//重启服务器

重新添加用户,提示的还是“『用户名』只能是字母和数字的组合三位以上。”这个字符串,不是刚才自己修改的字符串

===========================================

【问题】

1、上面的修改方法,哪里有不对的地方呢?

2、如果要适配2位甚至1位字母的用户名,应该怎么修改呢?

禅道版本 11.6 源码包
操作系统
客户端浏览器

提问者: james 悬赏: 5 日期: 2019-07-26 21:18:59 答案:1 点击:69
设置备注
答案列表
最佳答案
2019/07/29

1、用户名规则修改 zentao/config/zentaopms.php 中的$config->accountRule。

2、修改 zentao/module/common/lang/zh-cn.php 中的对应汉字。