東京ウェブ制作ブロマガ

CakePHPを用いて複数のチェックボックスの値をサーバサイドで取得する

2013/04/28 16:19 投稿

  • タグ:
  • 登録タグはありません
  • タグ:
  • 登録タグはありません
●入力画面
コントローラ:
  public function first_time_registration_for_partners_input_name() {
$this->set("title_for_layout","拡販パートナー様 - 新規登録 - お名前入力");

} // end of function

ビュー:
<?php echo $this->Form->create(false,array('type'=>'post','action'=>'./first_time_registration_for_partners_input_name_confirm')); /* CakePHP ver2.1 以降では、null ではなく false を設定する。*/ ?>
    
<?php echo $this->Form->input('勤務地', array(
 'type' => 'select',
 'multiple' => 'checkbox',
 'options' => array('東京', '大阪', '名古屋' , '四国' , '九州'),
 'value' => array('0', 3)
)); ?>

<?php echo $this->Form->end(" 確認画面へ進む "); ?>
  


●表示画面
コントローラ:
public function first_time_registration_for_partners_input_name_confirm(){

$array = array();
$array = $this->data['勤務地'];
$result = "";
foreach ($array as $key => $value) {
$result .= $value . "<br/>";
} // end of foreach

$this -> set("area", Sanitize::stripAll($result));
} //end of function


ビュー:
<p>表示:<hr> <?php echo $area; ?></p>


●解説
チェックボックスの選択によりサーバーサイドに渡されるのは、地名ではなく、配列の番号である。
たとえば、東京は0であり、大阪は1 九州は4である。
デフォルトでチェックさせたい場合は value で配列の番号を指定すればよい。
サーバサイドでは、配列として扱い、foreach で回して取得する。

表示例:


ブロマガ会員ならもっと楽しめる!

  • 会員限定の新着記事が読み放題!※1
  • 動画や生放送などの追加コンテンツが見放題!※2
    • ※1、入会月以降の記事が対象になります。
    • ※2、チャンネルによって、見放題になるコンテンツは異なります。
東京ウェブ制作ブロマガ

東京ウェブ制作ブロマガ

大和賢一郎

月額:¥550 (税込)

コメント

コメントはまだありません
コメントを書き込むにはログインしてください。

いまブロマガで人気の記事

継続入会すると1ヶ月分が無料です。 条件を読む

東京ウェブ制作チャンネル

東京ウェブ制作チャンネル

月額
¥550  (税込)
このチャンネルの詳細