给PHPCMS自定义表单添加验证码的思路是前台表单显示验证码,后台提交表单时进行验证码的校验即可以。
前台PHPCMS自定义表单显示验证码
这里我们添加一个验证码输入框,一个图片用来转入验证码,再有就是提交按钮,注意提交按钮的name属于必须是name="dosubmit",因为后端是根据这个来提取表单的,通过添加以下代码就可以显示验证码。<input class="bg-transparent text-white border pl-2" type="text" placeholder="Check code" name="checkcode"/>
<img id="vdimgck" align="absmiddle" onclick='this.src=this.src+"&"+Math.random()' style="cursor: pointer;" alt="Can't you see clearly? Click replace" src='{APP_PATH}api.php?op=checkcode&code_len=4&font_size=20&width=130&height=50&font_color=&background=' /><br>
<input type="submit" value="Submit" name="dosubmit" class="btn bg-main text-white p-1 my-3" />
后台校验验证码
在PHPCMS后台校验验证码必须开启session,然后将提交的验证码和session中的验证码进行比较即可。在phpcmsmodulesormguideindex.php中index类上面添加两行来加载session,
$session_storage = 'session_'.pc_base::load_config('system','session_storage');
pc_base::load_sys_class($session_storage);
在大约63行添加验证码的校验,在if (isset($_POST['dosubmit'])) {后面添加以下代码:
if ($_SESSION['code']!=strtolower(new_addslashes($_POST['checkcode']))) {
showmessage(L('checkcode is wrong'), HTTP_REFERER);
}
表示验证码错误后跳转到先前页面。
青锋建站承接phpcms网站建设服务,包括phpcms二次开发,phpcms模板开发服务。青锋建站,提供专业的高品质网站制作服务,包括网站建设,SEO,网络营销,PHP开发,网站建设知名品牌,全国接单,为企业构建强有力的营销平台。
转载请注明来源网址:青锋建站-http://www.sjzphp.com/webdis/phpcms_form_1159.html