有两个mysql表1.seats(id,number),2.reserved席位(in,seat_id,sceering_id)。
我在 show.blade 中将特定转向的所有座位显示为复选框:
{!!Form::model($screening,['method'=>'post', 'action'=>
['ReserveController@store',$screening->auditorium->id]])!!}
<input type="hidden" name="screening_id" value="{{$screening->id}}">
@foreach($seats as $seat)
<label class="checkbox-inline">
{!!Form::checkbox('seat_id[]',$seat->id,null)!!} Number: {{$seat->number}}
</label>
@endforeach
<div class='form-group'>
{!!Form::submit('Create Post',['class'=>'btn btn-primary '])!!}
</div>
{!!Form::close()!!}
当我单击一个复选框时,它会进入 Seat_id[] 数组。因此,我发送一个隐藏输入和一个带有 Seat_ids 的数组,然后我想将其存储在servedseats Mysql 表中。但在商店控制器中我遇到了问题。我正在尝试类似的事情:
public function store(Request $request){
$screening_id = $request->screening_id;
$seat_ids = $request->seat_id;
foreach($seat_ids as $seat_id){
Seatreserved::create($seat_id,$screening_id);
}
}
所以它不起作用,但我该如何解决这个问题?
试试这个代码
public function store(Request $request)
{
$screening_id = $request->screening_id;
$seat_ids = $request->seat_id;
foreach($seat_ids as $seat_id) {
Seatreserved::create([
'seat_id' => $seat_id,
'screening_id' => $screening_id
]);
}
}
您也可以使用
public function store(Request $request)
{
$screening_id = $request->screening_id;
$seat_ids = $request->seat_id;
$data = [];
foreach($seat_ids as $seat_id) {
$data[] = [
'seat_id' => $seat_id,
'screening_id' => $screening_id
];
}
Seatreserved::insert($data);
}
这是执行此操作的更好方法,因为它将与数据库交互一次。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)