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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[产品建议] 用户注册-用户名验证建议

[复制链接]
ndht2009 发表于 2010-1-6 22:34:19 | 显示全部楼层 |阅读模式
现在用户注册输入的用户名
可以输入 [,],! 等这些符号
官方是否可以优化一下用户名的验证
如:只能是数字,汉字或者是英文大小写字母

我这里有个验证只能是汉字或者是英文大小写的C语言程序
可以参考
-----------------------
static int
whatch(unsigned char ch)
{
        if (isalpha(ch))
                return 1;
        if (ch > 128 + 32 && ch <= 128 + 32 + 94)
                return 2;
        return 0;
}

static int
goodq(unsigned char ch)
{
        int q = ch - 128 - 32;
        if (q >= 16 && q <= 87)
                return 1;
        return 0;
}

int
goodgbid(char *userid)
{
        int q = 0;
        char *s;
        for (s = userid; *s != '\0'; s++) {
                switch (whatch(*s)) {
                case 0:
                        return 0;
                case 1:
                        if (q)
                                return 0;
                        break;
                case 2:
                        if (!q && !goodq(*s))
                                return 0;
                        q = !q;
                }
        }
        if (q)
                return 0;
        return 1;
}
littlehz 发表于 2010-1-7 18:18:19 | 显示全部楼层
[,],!这些符号可以注册,会员名称需要个性化,UC注册机制不限制这些字符,与安全有关的 ' " ? \ 等字符才不能注册
回复

使用道具 举报

littlehz 发表于 2010-1-7 18:18:27 | 显示全部楼层
[,],!这些符号可以注册,会员名称需要个性化,UC注册机制不限制这些字符,与安全有关的 ' " ? \ 等字符才不能注册
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 01:43 , Processed in 0.025539 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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