php - Multiple forms, one submit button in cakephp 3 -


i working in app cakephp 3, in app admin users can register pays made other users, trying allow users create multiple pays @ once in same view, 1 pay per user. have done first create 1 form repeating fields each user.

the problem when click submit button(i want one), data recive in controller data of last fields. don't know how handle in rigth way.

here code of mi view:

addmulti.ctp

<div class="pagos form col-lg-offset-2 col-lg-7"> <?= $this->form->create(false) ?> <?php foreach ($users $user):         echo '<br><strong>'.$user->full_name.'</strong>';         echo $this->form->checkbox('selected',['id'=>'select-'.$user->id,'onclick'=>'display_add_form('.$user->id.')']).'<br>';         echo '<div style="display: none;" id= form-'.$user->id.'>';         echo $this->form->input('user_id', array(             'type' => 'hidden',             'value' => $user->id,             'id'=>'user-'.$user->id         ));         echo $this->form->input('mes', ['type' => 'month','selected'=>'0','id'=>'month-'.$user->id]);         echo $this->form->input('monto',['default' => $user->monto_paga,'id'=>'monto-'.$user->id]);         echo $this->form->input('año', ['type' => 'year', [             'minyear' => date('y')-2,             'maxyear' => date('y')+2         ],'value'=> date('y'),'id'=>'year-'.$user->id]);         echo $this->form->input('forma_pago', ['options'=>['efectivo'=>'efectivo','transferencia'=>'transferencia','cheque'=>'cheque'],'id'=>'pago-'.$user->id]);         echo $this->form->button('cancelar',['type'=>'button','onclick'=>'hide_add_form('.$user->id.')','class'=>'btn btn-danger','id'=>'cancel-'.$user->id]);         echo '</div>';     endforeach;     echo $this->form->button(__('agregar pagos'),['class'=>'btn btn-primary']);     echo $this->form->end(); ?> 

<script> function display_add_form(id){     $("#form-"+ id).show('fast');     $("#select-"+ id).hide(); } function hide_add_form(id) {     $("#form-"+ id).hide('fast');     $("#select-"+ id).show(); } 

to continue answer @asif, easier if save each user separately.

... echo $this->form->input('users['.$user->id.'][mes]', ['type' => 'month','selected'=>'0','id'=>'month-'.$user->id]); echo $this->form->input('users['.$user->id.'][monto]',['default' => $user->monto_paga,'id'=>'monto-'.$user->id]); ... 

in way use easy loop in backend, like:

<?php foreach($input['users'] $userid => $user){     echo $user['mes']; } 

Comments