フォームヘルパー(1)」の続きです。前回はCakePHPの「フォームヘルパー」という機能を使用して、入力フォーム用のHTMLを作成しました。今回はそのフォームを使用して送信(Submit)された値をコントローラー側で受け取る方法を説明いたします。Chromeデベロッパーツールでの確認Chromeデベロッパーツールで値がPOST送信されていることを確認します。Chromeブラウザで「F12」ボタンを押下して、デベロッパーツールを表示させ、「Network」タブを開きます。Data」欄でPOSTされた値を確認することが可能です。コントローラー側での値の受け取り「フォームヘルパー」によるフォーム作成時に以下のような記述でフォームの開始タグの生成をおこないました。'post'])?>上記の記述の第2引数で、連携するコントローラーとアクションメソッド(「SampleController」の「index」メソッドと連携するように記述しています)、およびパラメータの送信方法(‘post’)を設定していますので、postされたパラメータはコントローラー(C:\xampp\htdocs\caketest\src\Controller\SampleController.php)内のindexメソッドで受け取ることができます。SampleController.phpでpostされた値を受け取る処理を記述します。$this->request->data['txt']);}else{$this->set('postdata',[]);}}}上記の例ではpostされた場合、’txt'(テキストボックス)に入力された値を取り出して、’postdata’にセットしています。ページの初期表示の際は、なにもpostされないので、その場合は空の配列を’postdata’にセットしています。コントローラーで受け取った値(‘postdata’)を画面に表示させて確認するために、index.ctpに以下のコードを追加します。var_dump($postdata);?>実行結果:以上の例ではテキストボックスの値のみを取り出しましたが、ラジオボタンやチェックボックスなどの値も同様に取り出すことが可能です。フォーム内の各要素をまとめて配列として取り出す方法フォーム内の各項目をひとつずつ取り出すかわりに一度に配列として取り出すことも可能です。以下のように書き換えます。'sel3'=>'セレクト3'],['multiple'=>true,'size'=>3]);?><br><br><?=$this->Form->submit('送信')?><?=$this->Form->end()?>フォーム内の各項目のname属性を指定する部分に「Form1.」を追加しました。このように記述するとコントローラで値を取り出す際に、以下の記述で、一度にフォーム内の各項目の値を取り出すことができます。$this->request->data['Form1']1$this->request->data['Form1']$postdataをvar_dumpで表示させた実行結果は以下のようになります。次回はCakePHPでのデータベース連携方法およびテーブルクラスとエンティティクラスの各役割についての説明をおこないます。アプリなどのアプリ開発・システム開発の流れ。[ご提案用簡易アプリ]簡易なデモ用アプリを安価でご提供させていただきます。[パッケージアプリのご案内]弊社でご提供しているパッケージアプリをご紹介します。[よくあるご質問]発注ご担当者様から頂戴するよくある質問をまとめました。[パートナー開発者募集]一緒に開発や制作を行っていただける方を募集しております。お問い合わせはこちらお問い合わせ・ご相談はお電話、またはお問い合わせフォームよりお受け付けいたしております。