ビューを更に考える (5/7)
作成:2010-02-17 17:13
更新:2010-05-10 19:15
更新:2010-05-10 19:15
■フォームヘルパーを使う
続いて、ページでよく使われる「フォーム」について、もう少し掘り下げてみましょう。前回、フォームを直接HTMLタグで作成して使ってみましたが、CakePHPにはもっと便利なフォーム生成の機能があります。それは「フォームヘルパー」と呼ばれるものです。
これは、ビュー・テンプレートに記述して利用するもので、フォーム関係のタグを自動出力するための機能を提供してくれます。これを利用すると、非常に簡単にフォームを作ることができます。
やってみましょう。index.ctpを以下のように修正してみます。これでname,mail.telという3つの項目からなるフォームが作成されます。
ここでは、「$form」というオブジェクトを使っています。これが、フォームヘルパーのオブジェクトです。これに用意されているメソッドを呼び出してフォーム関係のタグを出力させます。以下に整理しておきましょう。
・<form>タグを出力する
・<input>タグを出力する
・送信ボタンと</form>タグを出力する
$form->createでは、フォームのactionとmethodを、第2引数に連想配列として用意します。そしてフォームの最後にendを実行すると、送信ボタンとフォームの閉じタグが自動生成されます。
これは、ビュー・テンプレートに記述して利用するもので、フォーム関係のタグを自動出力するための機能を提供してくれます。これを利用すると、非常に簡単にフォームを作ることができます。
やってみましょう。index.ctpを以下のように修正してみます。これでname,mail.telという3つの項目からなるフォームが作成されます。
ここでは、「$form」というオブジェクトを使っています。これが、フォームヘルパーのオブジェクトです。これに用意されているメソッドを呼び出してフォーム関係のタグを出力させます。以下に整理しておきましょう。
・<form>タグを出力する
$form->create( モデル , array('type'=>メソッド, 'action'=>アクション)
・<input>タグを出力する
$form->input( 名前 );
・送信ボタンと</form>タグを出力する
$form->end( ボタンのラベル );
$form->createでは、フォームのactionとmethodを、第2引数に連想配列として用意します。そしてフォームの最後にendを実行すると、送信ボタンとフォームの閉じタグが自動生成されます。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
<h1>フォームの入力</h1> <pre><?php echo $result; ?></pre> <?php echo $form->create(null,array('type'=>'post','action'=>'.')); echo $form->input("name"); echo $form->input("mail"); echo $form->input("tel"); echo $form->end("終了"); ?>
※関連コンテンツ
「初心者のためのCakePHP 1.3 プログラミング入門」に戻る