php - Laravel 5 文件上传验证

标签 php laravel validation file-upload

我正在使用 Laravel 内置的文件上传功能将视频上传到我的网站。我已经成功上传了文件,但是当我的 friend 尝试上传视频时,他收到了错误“validation.uploaded”,我不知道为什么会这样,我一直在努力寻找错误,但我找不到找不到它。我们都在 firefox 和 chrome 中尝试过,但只有我的 friend 得到了它。请帮助这是我的代码:

保存视频功能

protected function saveVideo(UploadedFile $video)
{
    $fileName = str_random(40);

    $fullFileName = $fileName.'.'.$video->guessClientExtension();

    $video->storeAs('videos', $fileName);

    return $fullFileName;
}

从表单中保存

public function update(Request $request, $id)
{
    //dd($request->all());
    $video = Video::findOrFail($id);
    $this->validate($request, [
        'title' => 'required|unique:lessons,title,'.$video->id,
        'lesson_lists' => 'required',
        'description' => 'required'
    ]);
    $data = $request->only('title', 'description','lesson_lists');
    $data['slug'] = str_slug($request->title);

    if($request->hasFile('image')){
        $data['image'] = $this->saveImage($request->file('image'));
        if($video->image !== '') $this->deletePhoto($video->image);
    }

    if($request->hasFile('video')){
        $data['video'] = $this->saveVideo($request->file('video'));
        if($video->video !== '') $this->deleteVideo($video->video);
    }

    //$data['lesson_id'] = implode($request->get('lesson_lists'));
    $video->update($data);
    Session::flash("flash_notification", [
        "level"=>"success",
        "message"=>"Berhasil menyimpan $video->title"
    ]);

    return redirect()->route('video.index');
}

最佳答案

实际上,如果您尝试下载的文件大小超过“upload_max_filesize”,Laravel 会显示此验证错误,因此您必须打开 php.ini 文件并像这样设置选项:

post_max_size = 500M

上传最大文件大小 = 500M

注意:如果您使用 wamp 或 xamp,请不要忘记重新启动它,否则请重新运行命令:

php artisan 服务

关于php - Laravel 5 文件上传验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39854828/

相关文章:

php - AJAX/Laravel 多个文件上传

php - 使用 htaccess 强制下载图像

Laravel 验证唯一/存在于不同的数据库连接中

php - Laravel Eloquent firstOrFail 返回表中的所有记录

ruby-on-rails - Rails 包含验证

javascript - 在 Javascript 中验证对象形状的简单方法

数据库中的 Php 更新复选框状态

php - 创建包后的 Symfony3 ClassNotFoundException

php -/自动加载.php) : failed to open stream: No such file or directory in

android - EditText 验证 - 没有数字