我有一个具有表单的大会详细信息页面,因此用户可以为每种票券类型选择所需的数量,即表单:
<form method="post" action="{{route('congresses.registration', ['id' => $congress->id, 'slug' => $congress->slug])}}">
<ul>
{{ csrf_field() }}
@foreach($tickets as $ticket)
<li>
<div>
<span>{{$type->name}}</span>
</div>
<select name="types[{{ $type->name }}]">
<option selected></option>
@for ($i = $type->minPerUser; $i <= $type-> maxPeruser; $i++)
<option value="{{ $i }}">{{ $i }}</option>
@endfor
</select>
<span>X {{$type->price}}</span>
</li>
@endforeach
</ul>
<div class="card-footer">
<input type="submit" value="Next" />
</div>
</form>
当单击“下一步”按钮时,我希望在RegistrationController中存储用户选择的数量以及每种类型的价格在storeQuantity()方法中,以便可以将此信息发送到注册页面。同样,在这种方法中,将用户重定向到注册页面。
我有下面的代码,但是我在将所选数量和价格存储在数组中方面没有成功,因此可能将带有必要信息的数组返回到注册视图。你知道怎么做吗?
public function storeQuantity(Request $request){
$this->validate($request, [
]);
//dd($request->all());
$typeQuantities = $request->get('types');
foreach($typeQuantities as $typeName => $quantity){
$type = TicketType::where('name', $typeName)->firstOrFail();
$price = $type->price;
//dd($price); shows the price, example "10"
}
return view('congresses.registration')->with('selectedtypes', $selectedtypes);
}
“ dd($ request-> all());” 显示:
array:2 [▼
"_token" => ""
"types" => array:2 [▼
"center bench" => "2"
"lateral bench" => "1"
]
]
在foreach中尝试以下方法:
...
$price = $type->price;
$selectedtypes[$type->name]['qty'] = $quantity;
$selectedtypes[$type->name]['price'] = $price;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句