程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> Zend Framework生成驗證碼並實現驗證碼驗證功能(附demo源碼下載)

Zend Framework生成驗證碼並實現驗證碼驗證功能(附demo源碼下載)

編輯:PHP綜合

本文實例講述了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相關內容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優秀開發框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基於Zend Framework框架的PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved