Laravel 上传图片错误

Mat*_*teo 2 laravel

错误:图像必须是以下类型的文件:jpeg、png、jpg、gif、svg。

当我尝试从表单上传图像时出现此错误,图像是 .jpeg,我认为它应该可以工作,因为“图像”应该是 'required|mimes:jpeg,png,jpg,gif,svg|max:2048'

我的控制器

public function store(){

    $this->validate(request(),[

        'title' => 'required',

        'image' => 'required|mimes:jpeg,png,jpg,gif,svg|max:2048',

        'body' => 'required',

    ]);

    auth()->user()->publish(

        new Post(request(['title','image','body']))
    );


    session()->flash('message', 'your post has now been published');


    return redirect('/');
}
Run Code Online (Sandbox Code Playgroud)

** 我的刀片**

<form method="POST" action="/posts">

    {{csrf_field()}}

    <div class="form-group">

        <label for="title">Titolo</label>

        <input type="text" class="form-control" id="title" name="title">

    </div>


    <div class="form-group">

        <label for="image">Immagine</label>

        <input type="file" class="form-control" id="image" name="image">

    </div>

    <div class="form-group">

        <label for="body">Corpo</label>

        <textarea id="body" name="body" class="form-control"></textarea>

    </div>

    <div class="form-group">

        <button type="submit" class="bottone">Invia</button>

    </div>

    @include ('layouts.errors')

</form>
Run Code Online (Sandbox Code Playgroud)

Ali*_*zen 6

您缺少 enctype="multipart/form-data" 您的代码很好。但无论如何我建议使用image - intervention.