●入力画面
コントローラ:
  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 で回して取得する。

表示例: