多上传laravel 5.4

时间:2017-04-27 00:57:30

标签: php jquery laravel upload

我将上传的文件存储到数据库表时遇到问题。 这是我的观点代码:

{!! Form::open(array('action' => 'ArticleController@store', 'method' => 'post' )) !!}

    <input type="hidden" name="user_id" value="1">
    <div class="form-group m-b-20">
        <label for="exampleInputEmail1">Titre</label>
        <input type="text" class="form-control" name='title' id="exampleInputEmail1" placeholder="Saisir titre">
    </div>


    <div class="form-group m-b-20">
        <label for="videourl">Video URL</label>
        <input type="text" name="video_link" class="form-control" id="videourl" placeholder="Saisir url..">
    </div>


    <div class="form-group m-b-20">
        <input type="file" name="files[]"  multiple="multiple" >
    </div>
   <div class="form-group m-b-20">
        <label>Description</label>
        <textarea class="summernote" name="description"></textarea>
    </div>

    <button type="submit" class="btn btn-success waves-effect waves-light">Enregistrer et publier</button>
    <button type="button" class="btn btn-danger waves-effect waves-light">Annuler</button>
{!! Form::close() !!}

这是我的控制器的代码:

public function store(Request $request)
{
    Article::create($request->all());

    $article = New Article();
    $article->user_id = $request->get('user_id');
    $article->title = $request->get('title');
    $article->description = $request->get('description');
    $article->save();

    if($request->hasFile('files')):
        foreach ($request->file('files') as $file) :
            $path = '../articles/uploads';
            $titre = $file->getClientOriginalName();
            $file->move($path, $titre);
            $fichier = New Articlefile();
            $fichier->article_id = $article->id;
            $fichier->title = $title;
            $fichier->path = $path;
            $fichier->save();

        endforeach;

    endif;

    return redirect('articles');
}

2 个答案:

答案 0 :(得分:2)

也许我不完全理解您的问题,但我发现您在标签中缺少enctype="multipart/form-data" attr。

或Laravel使用:Form::open('url', array('files'=> true))

答案 1 :(得分:1)

您的开场线应允许操作,请尝试

{!! Form::open(array('action' => 'ArticleController@store', 'method' => 'post','files'=>'true' )) !!}