submitcheck拥有四个参数,$var : 全局变量中的下标,string类型;$allowget : 是否允许以get的方式请求,0为不允许,1为允许;$seccodecheck : 是否验证验证码,0为不验证,1为验证;$secqaacheck : 是否验证安全问答,0为不验证,1为验证。
很明显,为了验证验证码,我们需要把第三个参数$seccodecheck设置为1,就可以使用验证码验证了。
其次,我们需要为插件需要提交表单的页面,添加一个输入验证码的输入框,我们可以参考一下dz自带的登录页面的验证码的实现。
首先,dz会判断你是否启用了验证码功能,如果启用了,就会开始输出第二行,直到if的闭合最关键的就是第三句,他将会调用你当前模板的common/seccheck页面,也就是验证码页面。
1.开始改造
首先我们要找到范例插件的签到提交表单验证的位置。该插件的提交验证的地方在sign.inc.php中
那么我们首先要做的就是先写一个$seccodecheck变量(为了到时候给添加极验验证方便取消默认的验证码),赋值为1
然后修改之前的那个submitcheck,为他的第三个参数添加我们刚才写的$seccodecheck变量(第二个你就写为0就行了)。
后台代码:
if(!check_seccode($_G['gp_seccodeverify'], $_G['gp_sechash'])){ showmessage('submit_seccode_invalid'); }
接下来我们需要修改前台的表单页面,为他增加一个验证码输入框。
该插件的签到提交页面在插件目录下的template/sign.htm(电脑版)与template/touch/sign.htm(手机版)中,我们都需要进行修改。
首先我们需要先找到提交按钮(type=”submit”的button控件),然后在他的上方添加验证码代码。
前台代码: