phpcms v9表单向导添加验证码

本文详细介绍了如何在留言板功能中加入验证码验证,包括在表单页面添加验证码显示代码,以及在后台进行验证码校验的具体步骤。

要做留言板的功能,故用添加表单,想要在提交留言前加一个验证码的功能。网上的教程比较混乱,于是亲自实验了下,步骤如下:

首先是调用表单的页面加入验证码。表单js调用模版默认的是 \phpcms\templates\default\formguide\show.html(show_js.html)

添加如下代码:

<!--2018.11.07 add-->
{pc_base::load_sys_class('form', '', 0);}
<tr><td style="text-align:right;">验证码</td><td colspan="2"><span title="点击更换验证码" style=" cursor:pointer;"><input type="text" id="code" name="code" size="8" class="input-text">{form::checkcode('code_img', '4', '14', 100, 30)}</span></td></tr>
<!--end-->

  这里注意下:

注意,从标签中可知是使用了form类中的checkcode方法,那么就要确保此模板所在的控制器文件中已经调用了该类,调用方法如下:

{pc_base::load_sys_class('form', '', 0);}

  

二、找到这个文件 \phpcms\modules\formguide\index.php

 

在后面加上如下:

//2018.11.01 add
$session_storage = 'session_'.pc_base::load_config('system','session_storage');
pc_base::load_sys_class($session_storage);
//end

  

然后找到show()方法,如下:

在后面加上如下代码:

//2018.11.07 add
			if(!empty($_SESSION['code'])) {
				//判断验证码
				$code = isset($_POST['code']) && trim($_POST['code']) ? trim($_POST['code']) : showmessage(L('input_code'), HTTP_REFERER);
				if ($_SESSION['code'] != strtolower($code)) {
				 showmessage(L('code_error'), HTTP_REFERER);
				}
			}
			//end

  然后就可以预览了,在前台调用的时候需要调用js代码,例如:

<script language='javascript' src='{APP_PATH}index.php?m=formguide&c=index&a=show&formid=12&action=js&siteid=1'></script>

  

转载于:https://www.cnblogs.com/justdoyou/p/9926062.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值