【发布时间】:2018-04-06 13:07:37
【问题描述】:
有一个页面,用户可以在其中为每种工单类型选择他想要的数量,然后用户单击下一步,然后转到显示请求摘要的页面。
在用户选择数量的此页面中,对于每种票类型,用户可以选择最小和最大数量,例如对于票类型“center bench”,用户可以选择最大票数和票种“横向板凳”最多3张。
你知道如何纠正这个问题:如果用户在这个选择数量页面,将源代码中的数量更改为例如“1000000”的票类型“中心长凳”,然后点击“下一个” dd($request->all());显示:
array:2 [▼
"_token" => ""
"type" => array:2 [▼
"center bench" => "1000000"
"lateral bench" => "1"
]
所以控制器会收到“center bench”=>“100000”,这是不正确的。
你知道怎么处理吗?
代码:
所以在第一页有这个代码供用户选择每种票类型的数量:
<ul>
@foreach($tickets as $ticket)
<li>
<span>{{$ticket->title}}</span>
<form method="post" action="{{route('congress.registration', ['id' => $congress->id, 'slug' => $congress->slug])}}">
<select name=type[{{ $ticket->title }}]>
<option selected>0</option>
...
</select>
</form>
<span>X {{$ticket->showPrice()}}</span>
</li>
@endforeach
<li>
<span>TOTAL</span>
<span>0.00€</span>
</li>
<input type="submit" value="Next"/>
</form>
</ul>
当“下一步”按钮时,我在数组中获取用户选择的数量并使用 storeQuantity() 方法返回注册页面:
class RegistrationController extends Controller
{
public function storeTypes(Request $request){
dd($request->all());
$selectedTypes = $request->type;
return view('congresses.registration')->with('selectedTypes', $selectedTtypes);
}
}
【问题讨论】:
-
在你的 Blade 模板中添加一个 JavaScript 验证器