设为首页 | 加入收藏 | 网站地图 | RSS | XML

量身设计 注意细节

引领网络新潮流

建站资讯_南通金才泰丰信息技术有限公司

【phpcms】phpcms v9表单向导中怎么加入验证码

发布日期:2016-02-29 12:42:33   点击量:
phpcms v9表单向导中怎么加入验证码
 
问题描述:
如题今天在百度知道中发现一网友提的问题,感觉挺好代表性的所以在知道回答完后将答案同步到这里共各位网友参考。
 
解决方法:
在phpcms表单向导模块中创建字段时没有验证码类型去选择,所以也就无法直接使用来加入验证码了。
对模板程序稍微进行扩展开发即可实现。具体流程如下:
 
一、找到表单向导生成模板(一般默认为phpcms/templates/default/formguide/show_js.html),在大约25行form表单中插入调用验证码的代码,如下:
 
   
   
    {php pc_base::load_sys_class('form', '', 0); }
   
    {form::checkcode('code_img', '4', '14', 100, 30)}
   
 
 
二、然后找到表单提交地址对应的方法(phpcms/modules/formguide/index.php里的show()方法),在其中加入验证验证码是否正确的程序即可。代码示例如下:
找到大约第51行,有一句:
if (isset($_POST['dosubmit'])) {  //如果提交表单
一定要在此句之后的if判断大括号中写:
//启动session
$session_storage = 'session_'.pc_base::load_config('system','session_storage');
pc_base::load_sys_class($session_storage);
//验证码
if (($_SESSION['code'] != strtolower($_POST['code'])) || empty($_SESSION['code'])) {
    showmessage("验证码错误");
} else {
    $_SESSION['code'] = '';
}
OK,如此便可以实现前端调用验证码后台进行验证了。
 
PS: 其实“在前端模板对应位置调用form类的checkcode方法生成验证码在后台对应控制器进行验证”的思路适用于phpcms的所有功能模块不只是表单向导模块。
 
12
推荐阅读
  • 医院网络营销
  • 【SEO优化】"rel=nofollow"属性-SEO基础
  • 【phpcms】关于PHPCMS v9支付模块在使用新支付宝接口key时报错
  • 【PHP学习】新手如何学习PHP
  • 【SEO优化】SEO--我们是不是走错了路?
  • 【PHP学习】从搭建PHP开发环境开始
  • 电话热线:400-077-9011
    企业邮箱:jctf@ntjctf.cn
    地址:江苏省启东市银洲国际金融中心6号楼2203-2204号
    在线咨询
    技术支持
    销售电话
    扫一扫

    微信公众号
    关注我们

    百度熊掌号
    关注我们

    全国免费服务热线
    400-077-9011

    欢迎联系我们
    返回顶部
    Powered by CmsEasy