我正在嘗試為我的表單輸入創建一個驗證器,只接受影像。我已經在堆疊和其他論壇上進行了搜索,但是我得到的所有答案都對我不起作用..大多數答案的語法錯誤是缺少 enctype="multipart/form-data".. 但那顯然這里不是這種情況。這是我的表格和我的控制器:
形式:
<form method="post" action="{{url('file')}}" enctype="multipart/form-data">
@csrf
<div class="input-group hdtuto control-group lst increment" >
<input type="file" name="filenames[]" class="myfrm form-control">
<div class="input-group-btn">
<button class="btn btn-success btn-block" type="button" style="width: 100px !important"><i class="fldemo glyphicon glyphicon-plus" ></i>Add</button>
</div>
</div>
<div class="clone hide">
<div class="hdtuto control-group lst input-group" style="margin-top:10px">
<input type="file" name="filenames[]" class="myfrm form-control">
<div class="input-group-btn">
<button class="btn btn-danger btn-block" type="button" style="width: 100px !important"><i class="fldemo glyphicon glyphicon-remove"></i> Remove</button>
</div>
</div>
</div>
<button type="submit" class="btn btn-success" style="margin-top:10px">Submit</button>
</form>
<?php
控制器:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\File;
class FileController extends Controller
{
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('create');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$this->validate($request, [
'filenames' => 'mimetypes:jpeg,png,jpg',
'filenames.*' => 'required'
],$messages = [
'required' => 'The :attribute field is required.',
'mimes' => 'Apenas jpeg, png, png s?o permitidos.'
]
);
$files = [];
if($request->hasfile('filenames'))
{
foreach($request->file('filenames') as $file)
{
$name = time().rand(1,100).'.'.$file->extension();
$file->move(public_path('files'), $name);
$files[] = $name;
}
}
$file= new File();
$file->filenames = $files;
$file->save();
return back()->with('success', 'Data Your files has been successfully added');
}
}
我試圖將驗證更改為:'mimes:jpeg,png |max:4096, required', ,但仍然無法正常作業..
uj5u.com熱心網友回復:
像這樣使用
$rules = array(
'filenames' => 'required|array',
'filenames.*' => 'image|mimes:jpg,jpeg'
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/462063.html
上一篇:動態組件提供的運算式的blazorvalidationMessage包含不受支持的InstanceMethodCallExpression1
