【问题标题】:Why enter laravel loop data max 40 row?为什么输入 laravel 循环数据最多 40 行?
【发布时间】:2019-10-16 07:43:43
【问题描述】:

我在控制器上创建了一个存储功能。当时我将只输入一次提交的数据,最多只能输入40个索引数据。而那些40及以上的不进入数据库。为什么会这样?解决方案是什么?请我需要帮助。 对不起,我的英语不好。 谢谢

我使用的是 Laravel 5.6

public function store(Request $request)
    {
        //

      foreach($request->quantity as $quantity){
        if($quantity == NULL){

        }
        if($quantity != NULL){
          $data = new KomponenOlahan;
          $data->quantity = $quantity;
          $harga_satuan_mu = Input::get('harga_satuan_mu');
          $total = $quantity*$harga_satuan_mu;
          $data->kode_proyek = Input::get('kode_proyek');
          $data->nama_proyek = Input::get('nama_proyek');
          $data->kode_panel = Input::get('kode_panel');
          $data->nama_panel = Input::get('nama_panel');
          $data->schedule_kirim = Input::get('schedule_kirim');
          $data->nama_sales = Input::get('nama_sales');
          $data->ukuran_panel = Input::get('ukuran_panel');
          $data->ref = Input::get('ref');
          $data->type = Input::get('type');
          $data->komponen_bantu = Input::get('komponen_bantu');
          $data->nama_komponen = Input::get('nama_komponen');
          $data->spek = Input::get('spek');
          $data->satuan = Input::get('satuan');
          $data->diskon = Input::get('diskon');
          $data->harga = Input::get('harga');
          $data->pole = Input::get('pole');
          $data->ka = Input::get('ka');
          $data->ampere = Input::get('ampere');
          $data->quantity = $quantity;
          $data->harga_satuan_mu = $harga_satuan_mu;
          $data->harga_satuan_mb = Input::get('harga_satuan_mb');
          $data->harga_satuan_lb_oh = Input::get('harga_satuan_lb_oh');
          $data->id_estimasi = Input::get('id_estimasi');
          $data->nama_estimasi = Input::get('nama_estimasi');
          $data->total = $total;
          $data->trigger_bom = Input::get('trigger_bom');

          $data->save();
        }

      }

我的观点

 <td><input type="text" name="quantity[]" class="form-control"></td>
 <td><input type="text" name="kode_proyek" hidden value="{{$panel->kode_projek}}">

etc....


我的观点 my view

【问题讨论】:

  • 你试过在 if loop / 之后添加$data-&gt;save(); 吗?
  • 相同的最多 40 行。我有300行。当我在第 41 行输入数据时,数据直到第 300 行才能输入

标签: laravel foreach insert


【解决方案1】:

您可以先将其保存到数组中,然后使用批量插入。

逐一插入数据会减慢您的应用程序。

$insertArray = array();

foreach($request->quantity as $quantity){
  if($quantity == NULL){
    $insertArray[] = array(
      'quantity' => $quantity,
      'harga_satuan_mu ' => Input::get('harga_satuan_mu'),
      .... // add other fields

    )
  }
}
KomponenOlahan::insert($insertArray);

【讨论】:

  • 第 41 行,如果我插入值,则该值没有插入到数据库中
猜你喜欢
  • 2015-11-28
  • 2019-05-24
  • 1970-01-01
  • 2021-09-07
  • 1970-01-01
  • 2018-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多