У меня есть функция в контроллере, где несколько строк из формы сохраняется, это выглядит так,
public function postPayment(PaymentRequest $request){
$insertPayment=Input::get();
$payment= new paymentrecieved();
$data=array();
for($i = 0; $i < count($insertPayment['recieved_amount']); $i++) {
if($insertPayment['adjustmentmode'][$i]=='Option')
$adjust_mode='NONE';
else
$adjust_mode=$insertPayment['adjustmentmode'][$i];
$payment->invoice_id=$insertPayment['invoiceid'];
$payment->recieved_amount = $insertPayment['recieved_amount'][$i];
$payment->refno = $insertPayment['ref_no'][$i];
$payment->date = $insertPayment['date'][$i];
$payment->adjust_amount = $insertPayment['adjustmentamount'][$i];
$payment->adjust_mode= $adjust_mode;
$payment->save();
}
// $result = paymentrecieved::create($data);
$this->saveComment($insertPayment['comment'],$insertPayment['date1'],$insertPayment['invoiceid']);
$request->session()->flash('alert-success', 'Payment Has Been inserted Successfully');
return redirect('collection/payment/'.$insertPayment['invoiceid'].'');
}
Итак, в цикле я пытаюсь сохранить несколько строк, но в моей базе данных сохраняется только последняя строка формы. Любые наводки на то, в чем может быть проблема.
Спасибо
Я получил ответ исправить здесь
public function postPayment(PaymentRequest $request){
$insertPayment=Input::get();
$data=array();
for($i = 0; $i < count($insertPayment['recieved_amount']); $i++) {
$payment= new paymentrecieved();
if($insertPayment['adjustmentmode'][$i]=='Option')
$adjust_mode='NONE';
else
$adjust_mode=$insertPayment['adjustmentmode'][$i];
$payment->invoice_id=$insertPayment['invoiceid'];
$payment->recieved_amount = $insertPayment['recieved_amount'][$i];
$payment->refno = $insertPayment['ref_no'][$i];
$payment->date = $insertPayment['date'][$i];
$payment->adjust_amount = $insertPayment['adjustmentamount'][$i];
$payment->adjust_mode= $adjust_mode;
$payment->save();
}
// $result = paymentrecieved::create($data);
$this->saveComment($insertPayment['comment'],$insertPayment['date1'],$insertPayment['invoiceid']);
$request->session()->flash('alert-success', 'Payment Has Been inserted Successfully');
return redirect('collection/payment/'.$insertPayment['invoiceid'].'');
}
Других решений пока нет …