-
-8 2
-
昨天给QQDIY加了个论坛,但是在注册的时候,他说用户名包含敏感字符,不能注册,我去dz后台看了下,跟没没发现和我注册用户名相关的敏感词,又去ss和uc后台都看了,都没有,只能去百度了,原来根本不是字符串包含敏感词的原因,而且用户名太长。下面是解决方案。
修改程序文件:
找到下面三个文件,Ucenter下model文件夹中user.php、Discuz下uc_client/model文件夹中user.php、DEDECMS下uc_client/model文件夹中user.php,使用文本编辑工具打开,找到以“if($len”开头的验证用户名长度和是否含有敏感字符的代码,Ucenter、Discuz和DEDECMS5中是if($len > 15 || $len < 3,就是用户名不大于15不小于3,UCHOME中是if($len > 10 || $len < 3,用户名不小于3不大于10,将这些数字改成您需要的数字,我设置的是不大于20不小于3(也就是说UTF8版下注册用户名不超过6个汉字)。
注意:这个设置的值是英文字符长度,如果是utf版,每中文字符占用3,gbk版每字符占用2。
修改数据库:
将Discuz、Ucenter、UCHOME三个的数据库member数据表[Username]字段的长度修改为上面设置的数字,如20,DEDECMS不需要设置,默认就是20.
现在再去提交,就可以发现已经可以提交超过5个中文(UTF版)或7个中文(GBK版)字符长度的用户名了。
本文来源于php爱好者:php教程 —http://www.phplover.cn/
原文地址:http://www.phplover.cn/post/discuz-yonghumingbaohanminganzifu-jiejuefangfa.html
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
- 评论(0)
发表评论 TrackBack