即使上传文件,Laravel Input :: hasFile('image')也会返回false [英] Laravel Input::hasFile('image') returns false even if a File is uploaded

查看:1090
本文介绍了即使上传文件,Laravel Input :: hasFile('image')也会返回false的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个图片上传的表单字段,我用'files'=> true打开,就像这样:

  {{Form :: label('image','Image')}} 
{{Form :: file('image')}}

在我的控制器中,我想检查一个文件是否已经上传,并用它来做:

  if(Input :: hasFile('image')){
$ in_path ='img /';
$ in_extension = Input :: file('image') - > getClientOriginalExtension();
$ filename = Input :: get('name')。。。$ in_extension;
Input :: file('image') - > move($ in_path,$ filename);
$ user-> image = $ filename;
}

但Input :: hasFile总是返回false,我不知道为什么。


有没有人有想法?




编辑!:

 输入::文件( '图像'); 

结果为:

  Symfony \ Component \HttpFoundation\File\UploadedFile Object 

[test:Symfony \ Component \HttpFoundation\File\UploadedFile:private =>> ;
[originalName:Symfony \ Component \HttpFoundation\File\UploadedFile:private] => test.JPG
[mimeType:Symfony \Component\HttpFoundation\File\UploadedFile :private] => application / octet-stream
[size:Symfony \ Component \HttpFoundation\File\UploadedFile:private] => 0
[error:Symfony \Component\\ \\ HttpFoundation \ File \UploadedFile:private] => 1
[pathName:SplFileInfo:private] =>
[fileName:SplFileInfo:private] =>

我已经测试过另外一个用户的图片,这个工作正常。我不明白这是为什么这是为一些用户和其他一些不工作。


有可能是某种不被接受的图片吗?$ / $>

解决方案

我解决了什么问题。
代码是好的,但问题是一些图片只是大。




编辑:


不要惊慌指出,编辑 upload_max_filesize 可以解决问题。


I have a Form field for an Image upload, which I open with 'files' => true, like so:

{{ Form::label('image', 'Image') }}
{{ Form::file('image') }}

And in my Controller I want to check if a File was uploaded and do something with it:

if (Input::hasFile('image')){
        $in_path = 'img/';
        $in_extension = Input::file('image')->getClientOriginalExtension();
        $filename = Input::get('name').".".$in_extension;
        Input::file('image')->move($in_path, $filename);
        $user->image = $filename;
    }

But Input::hasFile always returns false and I don't know why.
Does anyone have an idea?

EDIT!:

Input::file('image');

results in:

Symfony\Component\HttpFoundation\File\UploadedFile Object
(
[test:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 
[originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => test.JPG
[mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => application/octet-stream
[size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0
[error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 1
[pathName:SplFileInfo:private] => 
[fileName:SplFileInfo:private] => 
)

I have tested around with another picture for another User and this works fine. I don't get why this is working for some Users and for some others not.
Is there maybe some kind of Pictures that are not accepted?

解决方案

I solved what was wrong. The code is fine, but the problem was some pictures were simply to big.

EDIT:
As Don't Panic pointed out, editing upload_max_filesize can solve the problem.

这篇关于即使上传文件,Laravel Input :: hasFile('image')也会返回false的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆