多个复选框中的所选数据无法识别

时间:2016-11-15 00:05:21

标签: cakephp-3.0

由于edit.ctp无法识别多重值复选框中存储的数据,因此我感到非常害怕。这是我的代码: 控制器:

public function edit($id = null) {
        $this->set('userfunc', $this->Auth->user('userfunction_id'));


        $user = $this->Users->get($id, [
            'contain' => []
        ]);
        if ($this->request->is(['patch', 'post', 'put'])) {
            $user = $this->Users->patchEntity($user, $this->request->data);
            if ($this->Users->save($user)) {
                $this->Flash->success(__('The user has been saved.'));

                return $this->redirect(['action' => 'index']);
            } else {
                $this->Flash->error(__('The user could not be saved. Please, try again.'));
            }
        }
        **$selection = explode('#',$user->member);**
        $userfunctions = $this->Users->Userfunctions->find('list', ['limit' => 200]);
        $userappartments = $this->Users->Userappartments->find('list', ['limit' => 200]);
        $userparkings = $this->Users->Userparkings->find('list', ['limit' => 200]);
        $this->set(compact('user', 'userfunctions', 'userappartments', 'userparkings', 'selection'));
        $this->set('_serialize', ['user']);
    }  
edit.ctp:
         <?php
           echo $this->Form->label('User.status', 'Status'); 
            $options = $statusList;
            echo $this->Form->radio('status', $statusList);   
            echo $this->Form->label('User.member', 'Mitglied'); 
            echo $this->Form->input('member', ['options' => $memberList, 'multiple' => 'checkbox', 'label' => false, 'selected' => $selection]);            
            echo $this->Form->input('userappartment_id', ['options' => $userappartments, 'label' => 'Wohnung']);
            echo $this->Form->input('userparking_id', ['options' => $userparkings, 'label' => 'Parkplatz']);
            echo $this->Form->input('contact', ['label' => 'Kontakt']);
            ?>

===== print_r显示一个看起来很好的数组: enter image description here 但是表格中的字段是emty: enter image description here

0 个答案:

没有答案