Fuelphp-form-programming
FuelPHP-フォームプログラミング
FuelPHPは、フォームプログラミングを実行するために、 Form Fieldset および Input の3つのクラスを提供します。
- Form クラスには、すべてのHTMLフォーム要素を作成するオプションがあります。
- Fieldset クラスは、モデルと検証を統合し、より高いレベルのメソッドを介してhtml要素を作成するオプションを提供します。
- *入力*クラスには、httpパラメーター、サーバー変数、ユーザーエージェントだけでなく、htmlフォームを介して送信されたデータを解析するオプションがあります。
この章では、FuelPHPの*フォームプログラミング*を学びましょう。
Form
前述のように、Formクラスはhtmlフォーム要素を作成するメソッドを提供し、重要なメソッドは次のとおりです-
開いた()
- open()*は、新しいフォームを作成するために使用されます。 それは、次の2つのパラメータを提供します-
- $ attributes -配列としてのフォームタグの属性、または文字列としてのアクションURLのみ。
- $ hidden -隠しフィールド名とその値の配列。
閉じる()
- close()*は単にフォームを閉じます。
入力()
- input()*はhtml入力要素を作成します。 次の3つのパラメーターがあります。
- $ field -入力要素の名前
- $ value -入力要素の値
- $ attributes -配列としての入力要素の属性
ラベル要素
- $ label -表示するラベル
- $ id -関連するフォーム要素ID
- $ attributes -配列としてのラベル要素の属性
隠された
パスワード
無線
- $ field -入力要素の名前
- $ value -入力要素の値
- $ checked -アイテムがチェックされているかどうか(true/false)
- $ attributes -配列としての入力要素の属性
チェックボックス
- $ field -入力要素の名前
- $ value -入力要素の値
- $ checked -アイテムがチェックされているかどうか(true/false)
- $ attributes -配列としての入力要素の属性
file
テキストエリア
- $ field -textarea要素の名前
- $ value -textarea要素の値
- $ attributes -配列としてのtextarea要素の属性
選択する
- $ field -選択要素の名前
- $ values -初期選択値
- $ options -配列としてのオプション。 ネストされた配列を使用してオプションをグループ化できます
- $ attributes -配列としての入力要素の属性
提出する
ボタン
- $ field -ボタン要素の名前
- $ value -ボタン要素の値
- $ attributes -配列としてのボタン要素の属性
リセット
fieldset_open
fieldset_openは、htmlフィールドセットと凡例要素を作成します。 それは次の2つのパラメータを持っています-
- 属性-配列としてのフィールドセット要素の属性
- legend -作成する凡例の名前
fieldset_close
fieldset_closeは、HTMLフィールドセット終了タグを作成します。
入力クラス
入力クラスは、フォームの詳細とともにすべての要求データを読み取るメソッドを提供します。 重要な方法のいくつかは次のとおりです-
uri
方法
get
- $ index -$ _GET配列のインデックス
- $ default -インデックスが見つからない場合のデフォルト値。
post
- $ index -$ _POST配列のインデックス
- $ default -インデックスが見つからない場合のデフォルト値
param
- $ index -配列のインデックス
- $ default -インデックスが見つからない場合のデフォルト値
パラメータが指定されていない場合、すべてのアイテムが返されます。
file
- $ index -$ _POST配列のインデックス
- $ default -インデックスが見つからない場合のデフォルト値
is_ajax
リクエストがAJAXを介して行われた場合、_is_ajax_はtrueを返します。
プロトコル
ip
real_ip
サーバ
- $ index -$ _POST配列のインデックス
- $ default -インデックスが見つからない場合のデフォルト値。
リファラー
ユーザーエージェント
クエリ文字列
ヘッダー
- $ index -HTTPヘッダーの名前
- $ default -インデックスが見つからない場合のデフォルト値。
拡張
実施例
フォームと入力クラスを使用して新しい従業員を追加する簡単なフォームを作成しましょう。
フォームを作成
次のように、従業員コントローラーで新しいアクション get_add を作成します。
次に、アクションのビュー、fuel/app/views/employee/add.phpを次のように追加します。
ここでは、 bootstrap を使用してフォームを設計しました。 FuelPHPは、ブートストラップコンポーネントを完全にサポートしています。 ページをリクエストすると、http://localhost:8080/employee/addに次のフォームが表示されます。
プロセスフォーム
新しいアクション_post_add_を作成してフォームを処理し、次のようにユーザーが入力した従業員データを従業員コントローラーのデータベースに追加します。
ここでは、ユーザーが入力したデータがデータベースに保存されると、従業員リストページにリダイレクトされます。 次に、従業員リストページを作成します。
従業員のリスト
次のように、データベース内の従業員をリストする新しいアクションaction_listを作成します。
次のように、上記のアクションの新しいビュー fuel/app/views/employee/list を作成します。
フォームを確認する
ここで、URL http://localhost:8080/employee/add を要求し、次のスクリーンショットに示すように従業員データを入力して、フォームを送信します。
次に、それは次のようにデータベースで利用可能なすべての従業員(新しく追加されたものを含む)を示しています-