zoukankan      html  css  js  c++  java
  • phpcms v9表单向导添加验证码

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

    首先是调用表单的页面加入验证码。表单js调用模版默认的是 phpcms emplatesdefaultformguideshow.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);}
    

      

    二、找到这个文件 phpcmsmodulesformguideindex.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>
    

      

  • 相关阅读:
    【转】C++多继承的细节
    【转】CVE-2010-4258 漏洞分析
    【转】cve-2013-2094 perf_event_open 漏洞分析
    android CVE 漏洞汇总
    ExecutorService中submit和execute的区别
    线程池之ThreadPoolExecutor使用
    postman接口自动化,环境变量的用法详解(附postman常用的方法)转
    件测试专家分享III GUI自动化测试相关
    Linux上运行Jmeter
    时间复杂度和空间复杂度计算
  • 原文地址:https://www.cnblogs.com/justdoyou/p/9926062.html
Copyright © 2011-2022 走看看