文件未保存到 fb laravel-5.8

File isn't saving into fb laravel-5.8

我正在尝试上传数据库中的文件,但它们没有保存到数据库中,或者页面没有显示任何错误。

控制器

public function store(Request $request)
{
    request()->validate([
        'file' => 'required',
    ]);

    $upload = $request->file('file');
    $path = $upload->store('public/storage');
    $file = File::create([
        'filename' => $file->getClientOrignalName(),
        'path' => $path
    ]);

    return redirect('/file')->with('success', 'File Uploaded Successfully');
}

路线

Route::get('/file','FileController@index')->name('viewfile');
Route::get('/file/upload','FileController@create')->name('formfile');
Route::post('/file/upload','FileController@store')->name('uploadfile');

Blade 文件:

<form method="post" action="{{ route('uploadfile') }}" enctype="multipart/form-data">
    @csrf
    <div class="form-group">
        <input type="file" name="filename" multiple="multiple">
    </div>
    <button type="submit" class="btn btn-primary">Upload</button>
    <a href="{{ route('viewfile') }}" class="btn btn-success">Back</a>
</form>

型号

protected $fillable = [
    'filename', 'path'
];

有什么解决办法吗?

如果您要上传多个文件,那么您输入的名称应该是一个数组。

<input type="file" name="filename[]" multiple="multiple">

您访问文件的名称不正确,因此您的上传应该是

$upload = $request->file('filename');

您的文件名将是

'filename' => $request->filename->getClientOriginalName()