Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)


Posted in PHP onMarch 22, 2016

本文实例讲述了Zend Framework生成验证码并实现验证码验证功能的方法。分享给大家供大家参考,具体如下:

今天讲述如何在留言本中实现验证码的功能..这样有利于我们网站减少一些垃圾留言或是广告留言..在这是我没有运用Zend Framework自带的Zend_Captcha组件..我只是找到ThinkPHP这个框架里的验证码类..就把它运用到了..我们留言本验证码的实现上...我在这里..是把它写成一个插件的形式...当然Zend Framework有很多方式运用其它代码..我现在只会运用其中一种...所以有好的方法的朋友..可以一起讨论一下下..大家一起进步嘛..呵呵....

第一步:在我们原来教程找到library文件夹..这里原来是存放我们Zend类库文件夹的地方..现在我们在library文件夹里加上项目中的几个文件夹:library/Custom/Controller/Plugin/

文件夹我们加入完成.这时候我们就要找到我们的验证码文件了..这里我命名为ImgCode.php文件名..这个文件就是我们将要用到生成验证码的类文件.当然这文件我是改写成了Zend Framework里的插件形式...ImgCode.php部分文件说明如下:

<?php
//ImgCode.php部分程序说明
//程序生成的验证码数据
$randval = $this->rand_string($length,$mode);
//把这个数据存贮在Zend_Session中...
//这里有一个Session命名空间的问题,朋友们可以去看一下手册
$authCode = new Zend_Session_Namespace('Auth_Code');
$authCode->imagecode = $randval;
?>

第二步:在我们留言本的控制器里(IndexController.php),加入一个如下的动作(Action).这个动作就是为了生成验证验的运用.

程序如下所示:

<?php
public function imgcodeAction() {
$this->getFrontController()->setParam('noViewRenderer', true);
//调用我们的验证码类
Zend_Loader::loadClass('Custom_Controller_Plugin_ImgCode');
$imagecode=new Custom_Controller_Plugin_ImgCode();
//返回验证码图片
$imagecode->image2();
}
?>

第三步:在我们的留言模板中加入验证码的功能:打开留言本显示页面的模板,message/index.phtml 我们在填写留言区加入下面html代码..这个时候请大家看源文件里面的JS代码..像更换验证码图片什么的功能..这小东西我就不多说了..我只是比上次教程多加了一些JS的功能..

最后..就是在我们的控制器(IndexController.php)里找到messageAction这个功能..我们在里面加下需要用到验证码的功能..也就是检验用户填写的验证码是否和我们存在Session里面的验证码相同..如果相同..我们就让他发表留言..否则就不让他留言..我想这个基本的思想大家都有的.

完整实例代码点击此处本站下载。

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

PHP 相关文章推荐
如何获得PHP相关资料
Oct 09 PHP
深入PHP操作MongoDB的技术总结
Jun 02 PHP
ubuntu10.04配置 nginx+php-fpm模式的详解
Jun 03 PHP
PHP用strstr()函数阻止垃圾评论(通过判断a标记)
Sep 28 PHP
php实现文件下载实例分享
Jun 02 PHP
ThinkPHP3.1新特性之G方法的使用
Jun 19 PHP
PHP面向对象之后期静态绑定功能介绍
May 18 PHP
php制作简单模版引擎
Apr 07 PHP
PHP实现适用于文件内容操作的分页类
Jun 15 PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
Apr 03 PHP
php实现生成code128条形码的方法详解
Jul 19 PHP
PHP使用 Pear 进行安装和卸载包的方法详解
Jul 08 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
Mar 21 #PHP
深入解析PHP的Laravel框架中的event事件操作
Mar 21 #PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
Mar 21 #PHP
PHP的Laravel框架结合MySQL与Redis数据库的使用部署
Mar 21 #PHP
PHP编写学校网站上新生注册登陆程序的实例分享
Mar 21 #PHP
调用WordPress函数统计文章访问量及PHP原生计数器的实现
Mar 21 #PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 #PHP
You might like
php算开始时间到过期时间的相隔的天数
2011/01/12 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
修改发贴的编辑功能
2007/03/07 Javascript
常用简易JavaScript函数
2009/04/09 Javascript
基于JQUERY的两个ListBox子项互相调整的实现代码
2011/05/07 Javascript
国外大牛IE版本检测!现在IE都到9了,IE检测代码
2012/01/04 Javascript
JS获取客户端IP地址、MAC和主机名的7个方法汇总
2014/07/21 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
在angularJs中进行数据遍历的2种方法
2018/10/08 Javascript
vue 内置过滤器的使用总结(附加自定义过滤器)
2018/12/11 Javascript
基于Vue SEO的四种方案(小结)
2019/07/01 Javascript
iview的table组件自带的过滤器实现
2019/07/12 Javascript
node.js Promise对象的使用方法实例分析
2019/12/26 Javascript
JS实现商品橱窗特效
2020/01/09 Javascript
[01:02:03]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS VG
2014/05/26 DOTA
python生成器的使用方法
2013/11/21 Python
一个简单的python程序实例(通讯录)
2013/11/29 Python
Python深入学习之对象的属性
2014/08/31 Python
Python中下划线的使用方法
2015/03/27 Python
Python两个内置函数 locals 和globals(学习笔记)
2016/08/28 Python
Python实用技巧之利用元组代替字典并为元组元素命名
2018/07/11 Python
django框架实现模板中获取request 的各种信息示例
2019/07/01 Python
简单瞅瞅Python vars()内置函数的实现
2019/09/27 Python
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
德国最新街头服饰网上商店:BODYCHECK
2019/09/15 全球购物
商务考察邀请函范文
2014/01/21 职场文书
摄影助理岗位职责
2014/02/07 职场文书
学校志愿者活动总结
2014/06/27 职场文书
七一党日活动总结
2014/07/08 职场文书
农村党支部书记四风问题个人对照检查材料
2014/09/21 职场文书
2015年元旦标语大全
2014/12/09 职场文书
团支部书记竞选稿
2015/11/21 职场文书
90行Python代码开发个人云盘应用
2021/04/20 Python
opencv-python图像配准(匹配和叠加)的实现
2021/06/23 Python
pd.DataFrame中的几种索引变换的实现
2022/06/16 Python