Как сохранить несколько строк из формы в laravel 5 Controller

У меня есть функция в контроллере, где несколько строк из формы сохраняется, это выглядит так,

  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'].'');

}

Итак, в цикле я пытаюсь сохранить несколько строк, но в моей базе данных сохраняется только последняя строка формы. Любые наводки на то, в чем может быть проблема.

Спасибо

0

Решение

Я получил ответ исправить здесь

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'].'');

}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]