Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5120178
  • 博文数量: 921
  • 博客积分: 16037
  • 博客等级: 上将
  • 技术积分: 8469
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-05 02:08
文章分类

全部博文(921)

文章存档

2020年(1)

2019年(3)

2018年(3)

2017年(6)

2016年(47)

2015年(72)

2014年(25)

2013年(72)

2012年(125)

2011年(182)

2010年(42)

2009年(14)

2008年(85)

2007年(89)

2006年(155)

分类:

2008-12-01 03:43:57

一系列的教程快过半了...现在真的是很少有以前一样的时间再去写教程了...不过我还是会坚持为想学Zend Framework 的朋友做一点我所能做到的东西.
我也是一直在学习中...所以有不好的地方..还是希望朋友们可以理解一下我..我只是把自己会的东西,自己理解的东西写出来..不是专业做教程的..因此有不对的地方还请各位多多批评指正...
    OK!现在我们来实现第5篇教程吧..就是如何在留言本中实现验证码的功能..这样有利于我们网站减少一些垃圾留言或是广告留言..在这是我没有运用Zend Framework自带的Zend_Captcha组件..我只是找到ThinkPHP这个框架里的验证码类..就把它运用到了..我们留言本验证码的实现上...我在这里..是把它写成一个插件的形式...当然Zend Framework有很多方式运用其它代码..我现在只会运用其中一种...所以有好的方法的朋友..可以一起讨论一下下..大家一起进步嘛..呵呵....
   
    第一步:在我们原来教程找到library文件夹..这里原来是存放我们Zend类库文件夹的地方..现在我们在library文件夹里加上如下几个文件夹:library/Custom/Controller/Plugin/...请看我项目增加文件夹后的图片效果:
文件夹我们加入完成.这时候我们就要找到我们的验证码文件了..这里我命名为ImgCode.php文件名..这个文件就是我们将要用到生成验证码的类文件.当然这文件我是改写成了Zend Framework里的插件形式...ImgCode.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).这个动作就是为了生成验证验的运用.
程序如下所示:

 

 


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自带的验证码Zend_Captcha组件来实现验证码的功能啊...PHPCHINA上有这方面的教程...我就不多说了...当然..要是有的朋友需要..我有时间再写一篇关于这个组件的运用吧...谢谢大家...

最最后..一个东西......

阅读(1366) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~