【发布时间】:2021-07-26 19:54:24
【问题描述】:
我有一个向控制器发送值的简单表单:
<form action="{{route('mollie.payment')}}" method="post" >
@csrf
{{-- <input name="text" type="text">--}}
<button type="submit" name="test" value="23.00">Send</button>
</form>
这个值是静态的,这个值不能被修改。当然,它可以在 Chrome 开发工具中轻松更改。
我怎样才能更好地实现这一点?
我想像这样进行验证:
public function preparePayment(Request $request)
{
$this->validate($request,[
'test' => '230.00'
]);
...
但它不起作用:
BadMethodCallException
Method Illuminate\Validation\Validator::validate230.00 does not exist.
保护这个价值的好方法是什么?
【问题讨论】:
-
如果它是静态的并且不会被修改,为什么不在控制器的变量中定义它呢?
-
是的,为什么它甚至是表单的一部分?
-
如果它是某种令牌,如果它已被更改且无效,则拒绝所述值。如果这个值类似于价格或类似的东西,那么在你的控制器中计算它而不是从表单中获取它。正面价格仅供展示,不可计算。
标签: php laravel validation