php – Laravel输入验证之间未正确验证

目前我在laravel输入验证中面临一些问题,其中两者之间的验证规则似乎无法正确应用.下面是我的HTML代码.

<input type="hidden" name="_token" value="{{ csrf_token() }}">
                <div class="margin-bottom-10">
                    <label>Thread Title :</label>
                    <input name="thread_title" maxlength="100" required>
                </div>                  
                <div class="margin-bottom-10">
                    <label>Price :</label>
                    <input type="number" step="0.01" min="0" required title="Please enter price with x.xx format." name="thread_item_price" />
                </div>

要做的是验证给定的价格必须在0到9999.99之间.我检查元素删除min =“0”并尝试提交负值表示-1000,系统似乎接受输入.以下是我的验证器规则

$validator = Validator::make($request::all(),
            [
                'thread_title' => 'required|max:100',
                'thread_item_price' => 'between:0,9999.99'
            ],
            [
                'thread_title.required' => 'Please fill in thread title.',
                'thread_title.max' => 'Thread title has exceeded 100 characters.',
                'thread_item_price.required' => 'Price cannot be empty.',
                'thread_item_price.between' => 'Price must be equals to 0 or 9999.99.',
            ]);

        if ($validator->fails()) {
            return Redirect::back()
                ->withErrors($validator)
                ->withinput();
        };

我做错了什么并且验证失败了吗?

解决方法:

你需要让Laravel知道它是一个数值.这应该适合你.

'thread_item_price' => 'numeric|between:0,9999.99'

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...