Zend Framework教程之Zend_Form組件實現(xiàn)表單提交并顯示錯誤提示的方法,zendzend_form_PHP教程
Jul 12, 2016 am 08:56 AMZend Framework教程之Zend_Form組件實現(xiàn)表單提交并顯示錯誤提示的方法,zendzend_form
本文實例講述了Zend Framework教程之Zend_Form組件實現(xiàn)表單提交并顯示錯誤提示的方法。分享給大家供大家參考,具體如下:
同時公司又要開發(fā)一個群組功能..我也就想運用一下Zend_Form來實現(xiàn)創(chuàng)建群組的功能.主要還是看中Zend_Form可以在寫Form時候.實現(xiàn)服務器端的驗證功能..省得我們在把數(shù)據(jù)提交到數(shù)據(jù)庫的時候再驗證一次..所以呢.我就看了一下這方面的手冊..通過Zend Framework手冊找到了相關的使用說明...最簡單的使用方式就是在控制器(Controller)里寫一個現(xiàn)成的Action,這樣..在這個控制器里就可以直接使用這個Action...代碼可以如下:
<?php public function formAction() { $form=new Zend_Form(); $form->setName('group'); $title = new Zend_Form_Element_Select('title'); $title ->setLabel('性別') ->setMultiOptions(array('mr'=>'Mr', 'mrs'=>'Mrs')) ->setRequired(true) ->addValidator('NotEmpty', true); $yourName = new Zend_Form_Element_Text('firstName'); $yourName->setLabel('姓名') ->setRequired(true) ->addValidator('NotEmpty', true) ; $email = new Zend_Form_Element_Text('email'); $email->setLabel('電子郵件地址') ->addFilter('StringToLower') ->setRequired(false) ->addValidator('NotEmpty'); $submit = new Zend_Form_Element_Submit('submit'); $submit->setLabel('group'); $form->addElements(array($title, $yourName,$email,$submit)); } ?>
當然..我也可以把這個Form專門寫成一個類...存放在一個forms共同的目錄下.這樣就方便我們管理我們所有的Form表單..我的實現(xiàn)方式就是把它放在和控制器(Controller)的同一級別的目錄下...這樣管理起來也方便..當然不同的朋友..有不同的想法...另一種方式..就是可以把它寫成View Helper...這個方式實現(xiàn)起來,,也很方便..這里我就不想多寫了...Zend Framework實現(xiàn)起來很方便...只要你想的到...無論你怎樣完成你的任務,,都是可以的..在這里我就不多說其它的...我只想談一下怎樣讓Zend_Form實現(xiàn)中文的提示信息功能...我這里有二種方法..
第一:比較笨的方式就是:如果你的網(wǎng)站不要做成多國語言的網(wǎng)站..同時你的Zend Framework版本不是經(jīng)常更換的話...你就可以找到相關提示信息的源碼...更改成中文的提示.
這個笨方法..實在是沒有辦法的辦法...呵呵...
第二:我也是在英文站...看到的一個比較好的方式,就是通過重寫這個提示信息.把它換成我們想要的語言...這樣...就算我們會去換語言..或是換Zend Framework的版本..
對我們的影響也不是很大...我們只要更改一下我們的Form的表單就可以搞定了..現(xiàn)在這種方式的代碼如下(我這里只寫了Email提示信息..其它的不要多寫出):
<?php $email = new Zend_Form_Element_Text('email'); $email->setLabel('電子郵件地址') ->addFilter('StringToLower') ->setRequired(false) ->addValidator('NotEmpty') ->addValidator('EmailAddress',true,array('messages' => array( 'emailAddressInvalid' => '這不是一個可用的電子郵件!', 'emailAddressInvalidHostname' => '這不是一個有效的主機名!', 'emailAddressInvalidMxRecord' => '這不是一個有效的電子郵件地址!', 'emailAddressDotAtom' => '這不是一個有效的電子郵件地址!', 'emailAddressQuotedString' => '這不是一個有效的電子郵件地址!', 'emailAddressInvalidLocalPart' => '這不是一個有效的電子郵件地址!', ))); ?>
到這里..Zend_Form這個組件還有一個比較重要的功能..就是Zend_Form_Decorator..手冊上稱為裝飾器,也就是說你可以自己寫你想要的裝飾器..比如說..你要把你的Form用Table包含起來..我們要怎樣實現(xiàn)呢?這個時候..我們就要用到比如說HtmlTag,Label這些裝飾器來達到我們想要的功能...這里是一個比較重要的概念了..有興趣的朋友可以去去看一下...因為如果你想要用Zend_Form這個組件..不會裝飾器因該用起來會很困難..所以必須要會這個東西..才可以創(chuàng)建你自己想要的表單功能..最后..就是一點裝飾器的小運用
我只是實現(xiàn)一個小的功能...如下代碼:
<?php $email = new Zend_Form_Element_Text('email'); $email->setLabel('電子郵件地址') ->addFilter('StringToLower') ->setRequired(false) //利用裝飾器來增加td標簽 ->addDecorator('HtmlTag', array('tag' => 'td')) ->addDecorator('Label', array('tag' => 'td')) //重復利用HtmlTag裝飾器來增加tr標簽 ->addDecorator(array('FooTr' => 'HtmlTag'), array('tag' => 'tr')) ->addValidator('NotEmpty'); ?>
哈哈....大致的運用就是這樣了...最后..就是驗證提交的數(shù)據(jù)了...看如何驗檢驗用戶提交的數(shù)據(jù)....這里就不多說了...OK...
更多關于zend相關內容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向對象程序設計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Zend Framework框架的PHP程序設計有所幫助。
您可能感興趣的文章:
- Zend Framework框架教程之Zend_Db_Table_Rowset用法實例分析
- Zend Framework教程之Zend_Db_Table_Row用法實例分析
- Zend Framework教程之Zend_Db_Table用法詳解
- Zend Framework開發(fā)入門經(jīng)典教程
- Zend Framework框架Smarty擴展實現(xiàn)方法
- Zend Framework框架路由機制代碼分析
- Zend Framework實現(xiàn)具有基本功能的留言本(附demo源碼下載)
- Zend Framework實現(xiàn)將session存儲在memcache中的方法
- Zend Framework分頁類用法詳解
- Zend Framework實現(xiàn)多文件上傳功能實例
- Zend Framework入門之環(huán)境配置及第一個Hello World示例(附demo源碼下載)
- Zend Framework教程之連接數(shù)據(jù)庫并執(zhí)行增刪查的方法(附demo源碼下載)
- Zend Framework教程之Zend_Db_Table表關聯(lián)實例詳解

熱AI工具

Undress AI Tool
免費脫衣服圖片

Undresser.AI Undress
人工智能驅動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機

Video Face Swap
使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

layui 提供了多種獲取表單數(shù)據(jù)的方法,包括直接獲取表單所有字段數(shù)據(jù)、獲取單個表單元素值、使用 formAPI.getVal() 方法獲取指定字段值、將表單數(shù)據(jù)序列化并作為 AJAX 請求參數(shù),以及監(jiān)聽表單提交事件獲取數(shù)據(jù)。

layui 登錄頁面跳轉設置步驟:添加跳轉代碼:在登錄表單提交按鈕點擊事件中添加判斷,成功登錄后通過 window.location.href 跳轉到指定頁面。修改 form 配置:在 lay-filter="login" 的 form 元素中添加 hidden 輸入字段,name 為 "redirect",value 為目標頁面地址。

使用 layui 進行前后端交互有以下方法:$.ajax 方法:簡化異步 HTTP 請求。自定義請求對象:允許發(fā)送自定義請求。Form 控件:處理表單提交和數(shù)據(jù)驗證。Upload 控件:輕松實現(xiàn)文件上傳。

使用PHP構建單頁應用程序(SPA)的步驟:創(chuàng)建PHP文件,并加載Vue.js。定義Vue實例,并創(chuàng)建包含文本輸入和輸出文本的HTML界面。創(chuàng)建包含Vue組件的JavaScript框架文件。將JavaScript框架文件包含到PHP文件中。

form 標簽用于創(chuàng)建表單,允許用戶輸入數(shù)據(jù)并提交至服務器端處理。屬性包括 action(處理程序 URL)、method(提交方式)、name(表單名稱)、target(提交目標)、enctype(數(shù)據(jù)編碼方式)。表單元素包括文本框、下拉列表、文本區(qū)域、按鈕等。提交表單會將數(shù)據(jù)通過指定方式和 URL 發(fā)送至服務器端。

Servlet 在 Java Web 應用程序中作為客戶端-服務器通信的橋梁,負責:處理客戶端請求;生成 HTTP 響應;動態(tài)生成 Web 內容;響應客戶交互;管理 HTTP 會話狀態(tài);提供安全保護。

Vue.js 中,event 為原生 JavaScript 事件,由瀏覽器觸發(fā),而 $event 是 Vue 特定抽象事件對象,在 Vue 組件中使用。一般使用 $event 更方便,因為它經(jīng)過格式化和增強,支持數(shù)據(jù)綁定。當需要訪問原生事件對象特定功能時,使用 event。

DOM(文檔對象模型)是用于訪問、操作和修改 HTML/XML 文檔樹狀結構的 API,它將文檔表示為一個節(jié)點層次結構,包括 Document、Element、Text 和 Attribute 節(jié)點,可用于:訪問和修改文檔結構訪問和修改元素樣式響應用戶交互創(chuàng)建/修改 HTML 內容
