在laravel中的foreach循环中修改当前对象

问题描述 投票:0回答:1

当我dd($ id_paket);运行顺利,但是当您在此处输入代码进入数据库时​​,为什么只存储最后输入?

控制器

public function update_penawaran(Request $request,$id)
{
    $harga_satuan = $request->input('harga_satuan');
    foreach ($request->input('harga_satuan') as $key => $hargasatu) {
      DB::table('tbl_pesanan as a')
      ->join('tbl_paket as b', 'a.id_paket', '=', 'b.id_paket')
      ->where('a.id_paket', $id)
      ->update([
          'b.status_paket' => $request->status_paket,
          'harga_satuan' => $harga_satuan[$key]
      ]);
    }
    // dd($harga_satuan);
    return redirect('/pesanan')->with('success','Berhasil Menambahkan Penawaran!');
}

查看

@foreach($pesanan as $p)


<tbody>
    <tr id="addRow" >
      <td class="col-xs-3" style="text-align: center;" >  {{$p->kode_bmn}}
      </td>

  <td class="col-xs-3" style="text-align: center;">{{$p->jenis_barang}}
  </td>
  <td class="col-xs-5" style="text-align: center;">{{$p->kuantitas}}
  </td>
  <td class="col-xs-5" style="text-align: center;">{{$p->satuan_ukuran}}
  </td>
  <td class="col-xs-5" style="text-align: center;">{{$p->kode_ruang}}
  </td>
  <td class="col-xs-3">
    <input class="form-control " name="harga_satuan[] " type="text" placeholder="Enter title" />
  </td>
</tr>


</tbody>
  @endforeach

enter image description here

enter image description here

enter image description here

id_pesanan(primarykey)id_paket(foreignkey)如何解决此问题?

php laravel view controller
1个回答
0
投票

这是我的简单解决方案。

控制器

更改

->where('a.id_paket', $id)

进入

->where('a.id_paket', $key)

查看

更改

<input class="form-control " name="harga_satuan[] " type="text" placeholder="Enter title" />

进入

<input class="form-control " name="harga_satuan[{{ $p->id_paket }}][] " type="text" placeholder="Enter title" />
© www.soinside.com 2019 - 2024. All rights reserved.