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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已解决] 全新安装X2.5,用户注册没有任何限制的情况下,用户名不能含有"欣"字。

[复制链接]
mzk1979 发表于 2012-6-12 11:23:48 | 显示全部楼层 |阅读模式
本帖最后由 mzk1979 于 2012-6-12 11:38 编辑

全新安装的UTF8的X2.5,测试用户注册时发现问题。后台没有对注册的用户名有任何限制,但是含有“欣”字的用户名全部会因为“含有敏感字符”被禁止注册。是由于编码问题,还是系统后台判断程序有BUG。该如何修正。

另外也不知道是否还存在其他被无辜限制的字。发现这个“欣”字也只是一个巧合。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
mark35 发表于 2012-6-12 12:24:54 | 显示全部楼层
本帖最后由 mark35 于 2012-6-12 12:41 编辑

uc里面有个preg过滤,把这个字给过滤掉了。也许不是专门针对这个字而是那个匹配规则写的是16进制,会误判的,还有其他几个字。
回复

使用道具 举报

mark35 发表于 2012-6-12 12:40:46 | 显示全部楼层
本帖最后由 mark35 于 2012-6-12 12:41 编辑


  1.         function check_username($username) {
  2.                 // waiitng: add
  3.                 if (strpos(stripslashes($username), "\") !== false) {
  4.                         return false;
  5.                 }
  6.                 // waiting: \xA1\xA1衡 \xAC\xA3欣
  7.                 //$guestexp = '\xA1\xA1|\xAC\xA3|^Guest|^\xD3\xCE\xBF\xCD|\xB9\x43\xAB\xC8';
  8.                 $guestexp = '^Guest';
  9.                 $len = $this->dstrlen($username);
  10.                 if ($len > 15 || $len < 3 || preg_match("/\s+|^c:\\con\\con|[%,\*"\s\<\>\&]|$guestexp/is", $username)) {
  11.                         return FALSE;
  12.                 } else {
  13.                         return TRUE;
  14.                 }
  15.         }
复制代码
\xA1\xA1衡 \xAC\xA3欣
回复

使用道具 举报

 楼主| mzk1979 发表于 2012-6-13 10:15:01 | 显示全部楼层
问题解决,非常谢谢
回复

使用道具 举报

下砂 发表于 2012-6-25 10:08:57 | 显示全部楼层
解决就好
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-26 06:26 , Processed in 0.027150 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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