首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 5.8图像上传失败

Laravel 5.8图像上传失败
EN

Stack Overflow用户
提问于 2019-05-09 19:57:53
回答 2查看 1.9K关注 0票数 1

我似乎无法使用Laravel上传图像文件。我一直在找the photo failed to upload

我的表单:

代码语言:javascript
复制
<form id="save_report_form" action="{{ route('report.add') }}" method="post" enctype="multipart/form-data">
    <input type="file" name="image" class="upload-photo" id="image" accept="image/png,image/jpg" />
</form>

我的控制器:

代码语言:javascript
复制
public function add(Request $request)
{
    $this->validate($request, [
        'image' => 'required|image|mimes:png,jpg',
    ]);

    // Get all file details and store in public
    $disk        = Storage::disk('public');
    $file        = $request->file('image');
    $ext         = $file->getClientOriginalExtension();
    $filename    = $file . '.' . $ext;
    $disk->put($filename, file_get_contents($file), 'public');

    return redirect()->back();
}

对于我的开发服务器,我已经将upload_max_filesize更改为20mb

在哪里可以找到上传失败的原因?我在Laravel日志中没有得到任何信息。我错过了什么。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2019-05-09 20:50:38

你能换掉

代码语言:javascript
复制
 $filename    = $file . '.' . $ext;

使用

代码语言:javascript
复制
$filename = $request->image->getClientOriginalName();
票数 0
EN

Stack Overflow用户

发布于 2019-05-09 21:02:22

您可以使用dd() /dd( $filename )函数检查$filename的结果,并查看结果是否符合预期。如果不是,可能就是问题所在。另外,就我在官方文档(https://laravel.com/docs/5.8/filesystem#file-visibility)中所看到的,put()方法的用法是没有php原生file_get_contents的示例(也请检查这一点)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56058928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档