dprh34164 2015-11-30 11:39
浏览 28
已采纳

如何在laravel 5 Controller中保存表单中的多行

I have a function in controller where multiple row from a form is being saved it looks like this ,

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

    }

So in the loop I am trying to save multiple row , But only the last row of the form is being saved i n my database . Any leads on what could be the issue .

Thanks

  • 写回答

1条回答 默认 最新

  • duanla1996 2015-11-30 12:06
    关注

    I got the answer fix is here

    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'].'');
    
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥66 比特币地址如何生成taproot地址
  • ¥20 数学建模数学建模需要
  • ¥15 关于#lua#的问题,请各位专家解答!
  • ¥15 什么设备可以研究OFDM的60GHz毫米波信道模型
  • ¥15 不知道是该怎么引用多个函数片段
  • ¥30 关于用python写支付宝扫码付异步通知收不到的问题
  • ¥50 vue组件中无法正确接收并处理axios请求
  • ¥15 隐藏系统界面pdf的打印、下载按钮
  • ¥15 基于pso参数优化的LightGBM分类模型
  • ¥15 安装Paddleocr时报错无法解决