• このエントリーをはてなブックマークに追加
CakePHPで簡単なフォームを作る
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

CakePHPで簡単なフォームを作る

2013-04-28 05:11
    ●フォーム入力インタフェース
    コントローラ: 
    public function index130428a() {
    $this->set("title_for_layout","東京ウェブ制作けいく");
    } // end of function


    ビュー: ファイル名 index130428a.ctp
    <h1>I am index130428a.ctp</h1>
    <p>this is test View.</p>
    <p> </p>
    <p>
      <form method="post" action="./form01" name="form1">
        <div><input type="text" name="text1" id="text1"></div>
        <div><input type="checkbox" name="check1" id="check1">
        <label for="check1">check1</label></div>
        <div><input type="radio" value="radio_A"
          name="radio1" id="radio_a">
        <label for="radio_a">Radio A</label>
        <input type="radio" value="radio_B"
          name="radio1" id="radio_b">
        <label for="radio_b">Radio B</label></div>
        <div><input type="submit" value="送る">
      </form>
    </p>
    </div>


    ●フォーム入力結果表示画面
    コントローラ: ファンクション名:form01()
    public function form01(){
    $text1 = $this -> data["text1"];
    $check1 = isset($this -> data["check1"]) ? "On" : "Off";
    $radio1 = $this -> data["radio1"];
    $this -> set("text1", $text1);
    $this -> set("check1", $check1);
    $this -> set("radio1", $radio1);
    } // end of function

    ビュー: ファイル名 form01.ctp
    <h1>I am form01.ctp</h1>
    <p>this is test View.</p>
    <p>text1: <?php echo $text1; ?></p>
    <p>check1: <?php echo $check1; ?></p>
    <p>radio1: <?php echo $radio1; ?></p>
    <p> </p>
    </div>


    ●解説
    フォームは大きく「入力用画面」と「結果表示用画面」に分かれるが、
    それぞれにコントローラ(内のファンクション)と、ビューが必要である。
    また、フォーム入力画面へのアクセスURLは、
    入力画面用のコントローラ(内のファンクション名)つまり
    上記の例では index130428a が末尾になる。
    よって、ファンクション名を定義する際は、それが公開URLになることを念頭において
    命名設計をする必要がある。

    表示例

    チャンネル会員ならもっと楽しめる!
    • 会員限定の新着記事が読み放題!※1
    • 動画や生放送などの追加コンテンツが見放題!※2
      • ※1、入会月以降の記事が対象になります。
      • ※2、チャンネルによって、見放題になるコンテンツは異なります。
    ブログイメージ
    東京ウェブ制作ブロマガ
    更新頻度: 不定期
    最終更新日:
    チャンネル月額: ¥550 (税込)

    チャンネルに入会して購読

    コメントを書く
    コメントをするにはログインして下さい。