Zend Framework生成驗證碼并實現(xiàn)驗證碼驗證功能(附demo源碼下載)
本文實例講述了Zend Framework生成驗證碼并實現(xiàn)驗證碼驗證功能的方法。分享給大家供大家參考,具體如下:
今天講述如何在留言本中實現(xiàn)驗證碼的功能..這樣有利于我們網(wǎng)站減少一些垃圾留言或是廣告留言..在這是我沒有運(yùn)用Zend Framework自帶的Zend_Captcha組件..我只是找到ThinkPHP這個框架里的驗證碼類..就把它運(yùn)用到了..我們留言本驗證碼的實現(xiàn)上...我在這里..是把它寫成一個插件的形式...當(dāng)然Zend Framework有很多方式運(yùn)用其它代碼..我現(xiàn)在只會運(yùn)用其中一種...所以有好的方法的朋友..可以一起討論一下下..大家一起進(jìn)步嘛..呵呵....
第一步:在我們原來教程找到library文件夾..這里原來是存放我們Zend類庫文件夾的地方..現(xiàn)在我們在library文件夾里加上項目中的幾個文件夾:library/Custom/Controller/Plugin/
文件夾我們加入完成.這時候我們就要找到我們的驗證碼文件了..這里我命名為ImgCode.php文件名..這個文件就是我們將要用到生成驗證碼的類文件.當(dāng)然這文件我是改寫成了Zend Framework里的插件形式...ImgCode.php部分文件說明如下:
<?php
//ImgCode.php部分程序說明
//程序生成的驗證碼數(shù)據(jù)
$randval = $this->rand_string($length,$mode);
//把這個數(shù)據(jù)存貯在Zend_Session中...
//這里有一個Session命名空間的問題,朋友們可以去看一下手冊
$authCode = new Zend_Session_Namespace('Auth_Code');
$authCode->imagecode = $randval;
?>
第二步:在我們留言本的控制器里(IndexController.php),加入一個如下的動作(Action).這個動作就是為了生成驗證驗的運(yùn)用.
程序如下所示:
<?php
public function imgcodeAction() {
$this->getFrontController()->setParam('noViewRenderer', true);
//調(diào)用我們的驗證碼類
Zend_Loader::loadClass('Custom_Controller_Plugin_ImgCode');
$imagecode=new Custom_Controller_Plugin_ImgCode();
//返回驗證碼圖片
$imagecode->image2();
}
?>
第三步:在我們的留言模板中加入驗證碼的功能:打開留言本顯示頁面的模板,message/index.phtml 我們在填寫留言區(qū)加入下面html代碼..這個時候請大家看源文件里面的JS代碼..像更換驗證碼圖片什么的功能..這小東西我就不多說了..我只是比上次教程多加了一些JS的功能..
最后..就是在我們的控制器(IndexController.php)里找到messageAction這個功能..我們在里面加下需要用到驗證碼的功能..也就是檢驗用戶填寫的驗證碼是否和我們存在Session里面的驗證碼相同..如果相同..我們就讓他發(fā)表留言..否則就不讓他留言..我想這個基本的思想大家都有的.
完整實例代碼點(diǎn)擊此處本站下載。
更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《Yii框架入門及常用技巧總結(jié)》、《ThinkPHP入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Zend Framework框架的PHP程序設(shè)計有所幫助。
- zen cart新進(jìn)商品的隨機(jī)排序修改方法
- php 修改zen-cart下單和付款流程以防止漏單
- Zend Framework開發(fā)入門經(jīng)典教程
- Zend Framework教程之Zend_Config_Ini用法分析
- Zend Framework教程之Zend_Config_Xml用法分析
- Zend Framework教程之Zend_Registry對象用法分析
- Zend Framework框架路由機(jī)制代碼分析
- Zend Framework入門之環(huán)境配置及第一個Hello World示例(附demo源碼下載)
- zen_cart實現(xiàn)支付前生成訂單的方法
相關(guān)文章
Laravel5.1 框架登錄和注冊實現(xiàn)方法詳解
這篇文章主要介紹了Laravel5.1 框架登錄和注冊實現(xiàn)方法,結(jié)合實例形式詳細(xì)分析了laravel5.1框架登錄與注冊相關(guān)配置、路由、實現(xiàn)方法與操作注意事項,需要的朋友可以參考下2020-01-01
詳細(xì)解讀PHP的Yii框架中登陸功能的實現(xiàn)
這篇文章主要介紹了詳細(xì)解讀PHP的Yii框架中登陸功能的實現(xiàn),包括通過cookie實現(xiàn)自動登錄的功能,需要的朋友可以參考下2015-08-08
thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實例詳解
這篇文章主要介紹了thinkphp 抓取網(wǎng)站的內(nèi)容并且保存到本地的實例詳解的相關(guān)資料,需要的朋友可以參考下2017-08-08
Laravel 5使用Laravel Excel實現(xiàn)Excel/CSV文件導(dǎo)入導(dǎo)出的功能詳解
這篇文章主要給大家介紹了關(guān)于在Laravel 5中如何使用Laravel Excel實現(xiàn)Excel/CSV文件導(dǎo)入導(dǎo)出功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下。2017-10-10
Yii2學(xué)習(xí)筆記之漢化yii設(shè)置表單的描述(屬性標(biāo)簽attributeLabels)
這篇文章主要介紹了Yii2學(xué)習(xí)筆記之漢化yii設(shè)置表單的描述(屬性標(biāo)簽attributeLabels),非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-02-02
Yii2基于Ajax自動獲取表單數(shù)據(jù)的方法
這篇文章主要介紹了Yii2基于Ajax自動獲取表單數(shù)據(jù)的方法,涉及Yii結(jié)合ajax調(diào)用鼠標(biāo)事件動態(tài)查詢表單的相關(guān)技巧,需要的朋友可以參考下2016-08-08

