ホームページ バックエンド開発 PHPチュートリアル Zend_Form コンポーネントはフォーム送信を実装し、エラー プロンプトを表示します

Zend_Form コンポーネントはフォーム送信を実装し、エラー プロンプトを表示します

Jun 07, 2018 pm 01:34 PM
framework zend フォームの送信

この記事では、Zend_Form コンポーネントを使用してフォーム送信を実装し、エラー プロンプトを表示する方法を主に紹介します。Zend_Form コンポーネントの使用方法と、サンプル フォームに基づいてフォーム送信を実装するための具体的な手順を詳細に分析します。次の

この記事の例では、Zend Framework チュートリアルの Zend_Form コンポーネントがフォーム送信を実装し、エラー プロンプトを表示する方法について説明します。参考として皆さんに共有してください。詳細は次のとおりです。

同時に、会社はグループ機能を開発したいと考えています。また、Zend_Form を使用してグループを作成する機能を実現したいと考えています。主なことは、Zend_Form を書き込みで使用できることです。形成時に、サーバー側の検証機能が実装されるため、データをデータベースに送信するときに再度検証する必要がなくなります。そこで、この点に関するマニュアルを読んで、関連する手順を見つけました。 Zend Framework マニュアルを参照してください。これを使用する最も簡単な方法は、コントローラ (Controller) に既成のアクションを記述することです。これにより、このアクションをこのコントローラで直接使用できるようになります。コードは次のようになります。次のように:

<?php
public function formAction() {
$form=new Zend_Form();
$form->setName(&#39;group&#39;);
$title = new Zend_Form_Element_Select(&#39;title&#39;);
$title ->setLabel(&#39;性别&#39;) ->setMultiOptions(array(&#39;mr&#39;=>&#39;Mr&#39;, &#39;mrs&#39;=>&#39;Mrs&#39;)) ->setRequired(true) ->addValidator(&#39;NotEmpty&#39;, true);
$yourName = new Zend_Form_Element_Text(&#39;firstName&#39;);
$yourName->setLabel(&#39;姓名&#39;) ->setRequired(true) ->addValidator(&#39;NotEmpty&#39;, true) ;
$email = new Zend_Form_Element_Text(&#39;email&#39;);
$email->setLabel(&#39;电子邮件地址&#39;) ->addFilter(&#39;StringToLower&#39;) ->setRequired(false) ->addValidator(&#39;NotEmpty&#39;);
$submit = new Zend_Form_Element_Submit(&#39;submit&#39;);
$submit->setLabel(&#39;group&#39;);
$form->addElements(array($title, $yourName,$email,$submit));
}
?>
ログイン後にコピー

もちろん .. このフォームをクラスとして記述して、フォームの共通ディレクトリに保存することもできます。これにより、すべてのフォーム フォームの管理が容易になります。私の実装方法は、Controller と同じディレクトリに配置することです。これは管理上も便利です。もちろん、友達によって考え方も異なります。 View Helperとして書いてください... この方法でも実装できます、、これも非常に便利です... ここでは詳しく書きたくない... Zend Frameworkは実装するのに非常に便利です... 思いつく限りそれについて...タスクをどのように完了しても、それは可能です...ここではこれ以上多くは言いません...私が話したいのは、Zend_Form に中国語のプロンプト情報機能を実現させる方法についてです...私はここには 2 つの方法があります...

最初: 愚かな方法は次のとおりです。Web サイトを多言語 Web サイトにしたくない場合...そして、Zend Framework のバージョンが頻繁に変更されない場合...関連するプロンプト情報のソース コードを見つけることができます...プロンプトを中国語に変更します。

この愚かな方法...本当に他に方法はありません...はは...

2 番目: 英語のサイトでもっと良い方法も見つけました... このプロンプト メッセージを必要な言語に変更します... この方法で... 言語を変更したとしても... またはZend Framework のバージョン...

、大きな影響はありません...フォームの形式を変更するだけで完了します。このメソッドのコードは次のとおりです。ここでは電子メールのプロンプト情報のみを書きました。他のことは書かないでください):

<?php
$email = new Zend_Form_Element_Text(&#39;email&#39;);
$email->setLabel(&#39;电子邮件地址&#39;) ->addFilter(&#39;StringToLower&#39;) ->setRequired(false) ->addValidator(&#39;NotEmpty&#39;) ->addValidator(&#39;EmailAddress&#39;,true,array(&#39;messages&#39; => array( 
&#39;emailAddressInvalid&#39; => &#39;这不是一个可用的电子邮件!&#39;, 
&#39;emailAddressInvalidHostname&#39; => &#39;这不是一个有效的主机名!&#39;, 
&#39;emailAddressInvalidMxRecord&#39; => &#39;这不是一个有效的电子邮件地址!&#39;, 
&#39;emailAddressDotAtom&#39; => &#39;这不是一个有效的电子邮件地址!&#39;, 
&#39;emailAddressQuotedString&#39; => &#39;这不是一个有效的电子邮件地址!&#39;, 
&#39;emailAddressInvalidLocalPart&#39; => &#39;这不是一个有效的电子邮件地址!&#39;,
))); 
?>
ログイン後にコピー

Here.. Zend_Form コンポーネントには、さらに重要な機能もあります。それは Zend_Form_Decorator です。これは、 ではデコレータと呼ばれます。これは、必要なデコレータを記述することができることを意味します。たとえば、フォームをテーブルに含める必要があります...どうやって実装するのでしょうか?現時点では、HtmlTag や HtmlTag などのデコレータを使用する必要があります。必要な機能を実現するためのラベル...これは比較的重要な概念です...興味のある友人は見に行ってください...Zend_Formコンポーネントを使用したい場合は...使いにくいためです。デコレータを知らない場合は、これを知っておく必要があります...作成する前に、必要なフォーム関数...結局のところ...デコレータを少し使用するだけです

小さな関数を実装するだけです... コードは次のとおりです:

<?php
$email = new Zend_Form_Element_Text(&#39;email&#39;);
$email->setLabel(&#39;电子邮件地址&#39;) ->addFilter(&#39;StringToLower&#39;) ->setRequired(false) //利用装饰器来增加td标签
->addDecorator(&#39;HtmlTag&#39;, array(&#39;tag&#39; => &#39;td&#39;)) ->addDecorator(&#39;Label&#39;, array(&#39;tag&#39; => &#39;td&#39;)) //重复利用HtmlTag装饰器来增加tr标签
->addDecorator(array(&#39;FooTr&#39; => &#39;HtmlTag&#39;), array(&#39;tag&#39; => &#39;tr&#39;)) ->addValidator(&#39;NotEmpty&#39;);
?>
ログイン後にコピー

はは... おおよそこれがアプリケーションです... 最後に... 送信されたデータを検証することです。 .. ユーザーが送信したデータを検証する方法を参照してください... ここでは多くは言いません... OK...

関連する推奨事項:

thinkphp multi-テーブル クエリ 2 つのテーブルには、同じフィールドを複製するための完璧なソリューションがあります

##

以上がZend_Form コンポーネントはフォーム送信を実装し、エラー プロンプトを表示しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Lauiuiでフォームデータを取得する方法 Lauiuiでフォームデータを取得する方法 Apr 04, 2024 am 03:39 AM

layui は、フォームのすべてのフィールド データを直接取得する、単一のフォーム要素の値を取得する、formAPI.getVal() メソッドを使用して指定されたフィールド値を取得する、フォーム データをシリアル化するなど、フォーム データを取得するためのさまざまなメソッドを提供します。これを AJAX リクエスト パラメータとして使用し、フォーム送信イベントをリッスンしてデータを取得します。

Lauiui でフロントエンドとバックエンドのインタラクションを実装する方法 Lauiui でフロントエンドとバックエンドのインタラクションを実装する方法 Apr 01, 2024 pm 11:33 PM

layui を使用したフロントエンドとバックエンドの対話には次のメソッドがあります。 $.ajax メソッド: 非同期 HTTP リクエストを簡素化します。カスタム リクエスト オブジェクト: カスタム リクエストの送信を許可します。フォーム コントロール: フォームの送信とデータの検証を処理します。アップロード制御: ファイルのアップロードを簡単に実装します。

Lauiuiログインページでジャンプを設定する方法 Lauiuiログインページでジャンプを設定する方法 Apr 04, 2024 am 03:12 AM

Layui ログインページジャンプ設定手順: ジャンプコードの追加: ログインフォーム送信ボタンクリックイベントに判定を追加し、ログイン成功後、window.location.href 経由で指定ページにジャンプします。フォーム構成を変更します。lay-filter="login" のフォーム要素に非表示の入力フィールドを追加します。名前は「redirect」、値はターゲット ページ アドレスです。

Javaにおけるサーバーレットの役割は何ですか Javaにおけるサーバーレットの役割は何ですか Apr 12, 2024 pm 02:39 PM

サーブレットは、Java Web アプリケーションにおけるクライアント/サーバー通信のブリッジとして機能し、クライアント要求の処理、HTTP 応答の生成、Web コンテンツの動的生成、顧客との対話への応答、HTTP セッション状態の管理、およびセキュリティ保護の提供を行います。

PHPパラメータ欠落問題の解決策 PHPパラメータ欠落問題の解決策 Mar 11, 2024 am 09:27 AM

PHP パラメータ消失の問題の解決策 PHP プログラムの開発過程では、フロントエンドから渡されたパラメータが不完全であったり、バックエンドからパラメータを受け取る方法が間違っていたりすることが原因で、パラメータ消失の問題が頻繁に発生します。この記事では、PHP でパラメーターが欠落している問題に対するいくつかの解決策と、具体的なコード例を紹介します。 1. フロントエンドパラメータの受け渡しの問題 GET メソッドを使用してパラメータを渡す GET メソッドを使用してパラメータを渡すと、パラメータは URL パラメータの形式で要求された URL に追加されます。バックエンドでパラメータを受信する場合

PHP を使用してシングルページ アプリケーションを構築する方法 PHP を使用してシングルページ アプリケーションを構築する方法 May 04, 2024 pm 06:21 PM

PHP を使用してシングルページ アプリケーション (SPA) を構築する手順: PHP ファイルを作成し、Vue.js をロードします。 Vue インスタンスを定義し、テキスト入力と出力テキストを含む HTML インターフェイスを作成します。 Vue コンポーネントを含む JavaScript フレームワーク ファイルを作成します。 JavaScript フレームワーク ファイルを PHP ファイルに含めます。

vueのeventと$eventの違い vueのeventと$eventの違い May 08, 2024 pm 04:42 PM

Vue.js では、event はブラウザによってトリガーされるネイティブ JavaScript イベントですが、$event は Vue コンポーネントで使用される Vue 固有の抽象イベント オブジェクトです。 $event はデータ バインディングをサポートするようにフォーマットおよび拡張されているため、一般に $event を使用する方が便利です。ネイティブ イベント オブジェクトの特定の機能にアクセスする必要がある場合は、event を使用します。

Java Servlet のアプリケーション シナリオは何ですか? Java Servlet のアプリケーション シナリオは何ですか? Apr 17, 2024 am 08:21 AM

JavaServlet は、1. 動的コンテンツの生成、2. データのアクセスおよび処理、4. ファイルのアップロード、6. フィルター、およびその他の用途に使用できます。例: フォームの送信を処理する FormSubmitServlet を作成し、名前と電子メールをパラメータとして受け取り、success.jsp にリダイレクトします。

See all articles