ansscs 发表于 2014-11-12 16:59:33

请问Dz怎么实现只能中文注册,而不使用英文或数字。

本帖最后由 ansscs 于 2014-11-15 23:53 编辑

最近发现个问题,即使论坛设置了用户必须上传图像和必须绑定QQ等功能也防不住注册机的大量注册广告骚扰,注册机很精明,在注册的时候总是注册的中文加英文,或者英文大写加小写,英文加数字。所以我想把论坛的默认注册方式改成只能中文注册,请问怎么修改,默认的是:usemame怎么改,需要动代码吗?求大神帮忙知道一下,详细的讲解一下。我相信还有许多和我一样困惑的用户以及想改的用户注册中文名的用户。我的网站是http://txt.bookue.com谢谢站长平台的无私奉献。

注册表单名称设置
用户名表单设置:
默认为 username ,只能是字母和数字的组合,必须以字母开头。修改后的表单名会使得注册机更难发挥作用

技术帮助 发表于 2014-11-12 17:28:29

方法很多,可以通过JS来判断,也可以通过Discuz的默认注册设置来实现。
首先给你说一下巧妙利用discuz的用户信息保留关键来实现只能中文注册:
在用户信息保留关键字里面加入以下已经整理的字段,这里面就包含了所有的英文字母和数字以及符号。
字段已经整理好,如下:
*0*
*1*
*2*
*3*
*4*
*5*
*6*
*7*
*8*
*9*
*z*
*x*
*c*
*v*
*b*
*n*
*m*
*,*
*.*
*/*
*'*
*;*
*l*
*k*
*j*
*h*
*g*
*f*
*d*
*s*
*a*
*q*
*w*
*e*
*r*
*t*
*y*
*u*
*i*
*o*
*p*
*[*
*]*
*!*
*@*
*#*
*$*
*%*
*^*
*7*
*(*
*)*
*-*
*—*
*=*
*+*
*、*
*|*
*?*
*》*
*《*
*“*
*:*
*{*
*}*
复制到:



测试:

技术帮助 发表于 2014-11-12 22:04:34


技术帮助 发表于 2014-11-12 22:25:35

本帖最后由 技术帮助 于 2014-11-12 22:42 编辑

打开source/language/member/lang_template.php文件里面找到:
'register_username_tips' => '用户名由 3 到 15 个字符组成',
修改为:
'register_username_tips' => '用户名由 3 到 15 个字符组成,<span style="color:red">并且只能为中文!</span>',
修改后对照:

修改后的实际效果:



然后打开source/language/lang_message.php修改:
'profile_username_protect' => '用户名包含被系统屏蔽的字符',

'profile_username_protect' => '请使用中文用户名注册',
修改后的代码参照:



使用效果:

输入英文测试:



输入数字测试



输入字符测试:





希望能够解决你的问题!


ansscs 发表于 2014-11-13 14:44:54

谢谢技术帮助版主的帮助,已经弄好了,多谢!{:soso__3110130392203091378_3:}

技术帮助 发表于 2014-11-13 17:43:54

ansscs 发表于 2014-11-13 14:44
谢谢技术帮助版主的帮助,已经弄好了,多谢!

下次记得修改分类为已解决哦!

ansscs 发表于 2014-11-15 23:52:04

技术帮助 发表于 2014-11-13 17:43
下次记得修改分类为已解决哦!

好{:4_88:}

技术帮助 发表于 2014-11-15 23:52:20

ansscs 发表于 2014-11-15 23:52


ok

其实哥很善良 发表于 2015-1-8 14:12:27

那个文件在哪里啊?

技术帮助 发表于 2015-1-11 20:48:11

其实哥很善良 发表于 2015-1-8 14:12
那个文件在哪里啊?

那个文件?
页: [1]
查看完整版本: 请问Dz怎么实现只能中文注册,而不使用英文或数字。