输入:: hasFile()不起作用

摇滚新星

我正在尝试检查是否尝试处理要上传的图像,但是当我尝试使用de Input :: hasFile('upimg')进行检查时,它没有执行任何操作。这是我的表格:

{!! Form::open(array('route' => array('uploadimage'), 'method' => 'POST')) !!}
                    {!! csrf_field() !!}
                    <div class="form-group">
                        {!! Form::label('newimg', 'Choose Image to upload:', ['class' => 'control-label']) !!}
                        {!! Form::file('upimg', null) !!}
                    </div>
                    <div class="form-group">
                        {!! Form::label('directory', 'Choose directory:', ['class' => 'control-label']) !!}
                        {!! Form::select('newimage', [ '' => 'none'] + $imagesdir , '', ['class' => 'form-control']) !!}
                    </div>

                    {!! Form::submit('Upload', ['class' => 'btn btn-primary']) !!}

                    {!! Form::close() !!}

这是我用来检查文件的代码:

public function doUpload()
{
   if (Input::hasFile('upimg')){
      echo 'uploaded';
   }; 
}

如您所见,我正在尝试检查:

{!! Form::file('upimg', null) !!}

如果我没有记错的话,它应该给我回声,但是什么也没发生。为什么这不起作用?我究竟做错了什么?

michalk93

确保您'file' => true在表单定义中有一个选项,如下所示:

{!! Form::open(['route' => ['uploadimage'], 'file' => true]) !!}

此选项导致您的表单将使用enctype="multipart/form-data"HTML表单标记中的选项进行呈现请参阅文档:HTML enctype

您无需添加method => 'POST'表单定义,因为Laravel 5默认使用POST方法发送表单。

请让我知道该解决方案是否不适合您。

要在服务器端检查文件,可以使用Request对象的方法,如Laravel文档中所示:Laravel中的文件

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章