【发布时间】:2015-10-18 04:52:08
【问题描述】:
验证输入时遇到问题。除图像字段外,所有输入字段都通过了验证过程。
这是我的html文件上传代码:
<div class="control-group">
<label class="control-label" for="fileInput"> Cover picture: </label>
<div class="controls">
{!! Form::file('cover') !!}
</div>
</div>
以及我如何从控制器的视图中获取数据:
$datas = array(
'name' => Input::get('name'),
'color' => Input::get('color'),
'size' => Input::get('size'),
'cover' => array('cover' => Input::file('cover'))
);
这是规则:
$rules = array(
'name' => 'required',
'color' => 'required',
'size' => 'required',
'cover' => 'required|mimes:jpeg,jpg,png|max:10000'
);
还有验证门面的make方法:
$validator = Validator::make($datas, $rules);
正如我之前提到的,所有验证规则都通过了输入,但是对于图像它给了我一个错误:
封面必须是以下类型的文件:jpeg、jpg、png。
现在,我该如何解决?
【问题讨论】:
-
您上传的是 JPEG、JPG 还是 PNG 文件?
-
是的,我正在上传 JPEG、JPG 或 PNG。但它仍然给我一个错误。
-
您的
Form::open通话中是否包括files => true? -
是的,ceejayoz。我在 Form::open 中包含了 'files' => true。但还是报错。
-
Input::file('cover')应该返回一个文件数组,而无需在掩护下创建一个辅助数组。它现在是多维的,而不是预期的。
标签: php validation laravel-5