我正在尝试为我的laravel项目创建一个简单的上传图片功能但是我一直收到这个错误:
FatalThrowableError in UploadController.php line 23:
Fatal error: Call to a member function hasFile() on null
这是我的控制者:
public function uploadImg(Request $request){
$input = $request->input();
if($input->hasFile('file')){
echo 'Uploading';
$file = $input->file('file');
$file->move('uploads', $file->getClientOriginalName());
echo 'Uploaded';
}
}
这是我的表格:
<form action="/admin/media/uploadImg" method="post" enctype="multipart/form-data">
<label>Select image to upload:</label>
<input type="file" name="file" id="file">
<input type="submit" value="Upload" name="submit">
<input type="hidden" value="{{ csrf_token() }}" name="_token">
</form>
答案 0 :(得分:1)
hasFile()
方法仅适用于请求对象,而不适用于输入数组。试试这个:
if($request->hasFile('file')){
请参阅:https://laravel.com/docs/5.2/requests#files
您还需要更改此行:
$file = $input->file('file');
要:
$file = $request->file('file');