Php 如何在laravel中从视图控制器传递数组
我在blade.php中创建表,我想将数组值传递给控制器,这是我的blade.phpPhp 如何在laravel中从视图控制器传递数组,php,laravel,Php,Laravel,我在blade.php中创建表,我想将数组值传递给控制器,这是我的blade.php @foreach ($alats as $data) <tr> <td align="center" style="border-bottom: 3px solid {{$warna}}">{{$no}}</td> <td align="center" style="b
@foreach ($alats as $data)
<tr>
<td align="center" style="border-bottom: 3px solid {{$warna}}">{{$no}}</td>
<td align="center" style="border-bottom: 3px solid {{$warna}}" name="no_inventaris[]">{{$data->no_inventaris}}</td>
<td align="center" style="border-bottom: 3px solid {{$warna}}" name="kode_alat[]">{{$data->kode_alat}}</td>
<td align="center" style="border-bottom: 3px solid {{$warna}}" name="tahun[]">{{$data->tahun}}</td>
<td align="center" style="border-bottom: 3px solid {{$warna}}" name="jenis_alat[]">{{$data->jenis_alat}}</td>
<td align="center" style="border-bottom: 3px solid {{$warna}}" name="merk_alat[]">{{$data->merk_alat}}</td>
<td align="center" style="border-bottom: 3px solid {{$warna}}" name="tipe_alat[]">{{$data->tipe_alat}}</td>
</tr>
但它总是会出错
在null上调用成员函数get()
使用$request->get()
方法
$namas=$request->get('namas');
$noInventarisIds=$request->get('no_inventaris');
// ...
这不是带有输入的表单吗?如何随请求发送数据?即使您是通过ajax发送post数据-因为否则您需要带有输入元素的表单-您也应该在控制器方法中选中dd($request->input('no\u inventaris'))
。如果是数组,则可以使用数组索引获取值。我不认为数组上存在[a',r',r']->get(),get()
可能不存在。我想从数据库的另一个表中获取数据,然后将其保存到另一个表中,这就是为什么我没有带输入的表单。我尝试过这样做,没有出错,但没有将数据保存到数据库。我已经解决了您的问题。关于不保存到DB,您需要检查输入并调试更新查询。
public function kirimsemua(Request $request){
$namas = $request->nama;
$ids = $request->no_inventaris->get();
$get_alat = Alat::whereIn('no_inventaris',$ids)->get();
$permohonan[] = new Permohonan;
foreach ($get_alat as $key) {
$permohonan = new Permohonan;
$permohonan->no_inventaris = $ids;
$permohonan->tanggal_permohonan = date("Y-m-d");
$permohonan->tindakan = "";
$permohonan->nama_pengirim = $request->nama;
$permohonan->kode_lokasi = $get_alat->kode_lokasi;
$permohonan->id_workcenter = $get_alat->id_workcenter;
$permohonan->alasan = $request->input_alasan;
$permohonan->save();
}
DB::table('q_alat')->whereIn('no_inventaris', $ids)
->update(['status' => 'terkirim']);
return redirect('request_kalibrasi_user/'.$namas)->with('sort',"1");
}