输入:: file('filename')返回null Laravel 5.1

时间:2015-09-07 18:04:30

标签: php laravel laravel-5.1

以下是我的代码:

a

在控制器中:

{!! Form::open(['route' => 'add_auto', 'class'=>'form-horizontal', 'files'=>true, 'method'=>'GET']) !!}
   {!! Form::file('file1'); !!}
   {!! Form::submit('Click Me!'); !!}
{!! Form::close()!!}

我无法在目录中检索并保存此文件,因为它表示没有文件并返回null。但是如果我们写入控制器:

if ($request->hasFile('file1')) {
   $file1 = $request->file('file1');
   $request->file('file1')->move('../public/img');
}else{
        echo 'Has not any file!';
}

然后显示:

dd($request->all());

问题在哪里?!!

2 个答案:

答案 0 :(得分:3)

提交类型为FORM

GET元素无法传输文件!它必须是POST,此外,您必须将enctype属性设置为multipart/form-data

答案 1 :(得分:0)

问题是你调用方法" file"两次。 在您的控制器中,只需输入:

if ($request->hasFile('file1')) {
    $file1 = $request->file('file1');
    $file1->move('../public/img');
} else {
    echo 'Has not any file!';
}