Discuz正则验证,Discuz验证码
当前目录列表:
1、Discuz里,如何用正则表达式验证用户输入的信息只能为正整数。如图第二个空,怎么填都不对啊 2、请教高手Discuz x2 想在用户注册那里给用户名加条验证规则,不让纯数字用户名注册,该怎么实现? 3、Discuz登录密码怎么验证 4、如何用Discuz增加中文验证码
Discuz里,如何用正则表达式验证用户输入的信息只能为正整数。如图第二个空,怎么填都不对啊
[1-9]\d*
首位为1-9的数,后面接0-9的数0次以上,不就是正整数了。

请教高手Discuz x2 想在用户注册那里给用户名加条验证规则,不让纯数字用户名注册,该怎么实现?
X2没有这项自带功能,也许代码可以实现,不过没看到过这种代码
Discuz登录密码怎么验证
在构建我的vita系统的过程中,发现***管理的便捷与系统安全隐患之间的矛盾
全站采用cookie验证,比如WordPress的验证就是基于cookie的,由于cookie的明文传输
在局域网内极易被截获,或者这个vita在我不发骚的情况下存在了XSS漏洞的话,cookie被人截获,
在这种情况下,等于站点被人***了
另一种情况就是利用session来进行***身份的认证,但是由于php天生对于session的处理机制的问题,不能长时间保存,利用数据库构建的session系统开销太大,在这种情况下,我就只好先研究先下大家是怎么做的
于是分析了Discuz!的登陆验证机制
每个Discuz!论坛都有一个特定的authkey也就是Discuz!程序中的$_DCACHE['settings']['authkey']并且与用户的浏览器特征值HTTP_USER_AGENT一起组成了Discuz_auth_key这个变量如下代码:
commone.inc.php文件大概130行左右
$Discuz_auth_key = md5,$_DCACHE['settings']['authkey'].$_SERVER['HTTP_USER_AGENT'];
在Discuz!论坛用户登陆以后会有一个cookie,名称为cdb_auth,cdb_是你站点的名称,可以设置不能在config.inc.php 文件中设置,Discuz!论坛就靠这个来判断一个用户是否是登陆状态,在分析这个值的内容之前,我们看下他是如何生成的
list,$Discuz_pw, $Discuz_secques, $Discuz_uid = empty,$_DCOOKIE['auth'] ? array,'', '', 0 : daddslashes,explode("\t", authcode($_DCOOKIE['auth'], 'DECODE'), 1);
解释一下,获得的客户端的cookie经过Discuz!的函数authcode解密以后会得到用户输入的用户名,密码,在authcode函数中 会用到刚刚提到的$Discuz_auth_key这个值,在不知道$Discuz_auth_key的情况下,基本上靠cookie里的值反解出用户名 密码的几率为0,同样的,在生成cdb_auth就是相逆的一个流程,先获得用户输入的用户名,密码,在验证正确之后,用authcode加密,写入 cookie,很简单吧
以上就是Discuz!普通用户的登陆验证过程,写的不是很详细,大概能看明白就行
如何用Discuz增加中文验证码
1.打开电脑的c:/windows/fonts随便找一个中文字体,上传static/image/seccode/font/ch/ 注意使用二进制上传。这样才有中文库。
2.Discuz后台设置开启下中文验证码:登陆后台——防灌水——验证设置
之后就可以看到设置的中文验证码效果了。
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 建站教程 > Discuz正则验证,Discuz验证码


