当前位置:  开发笔记 > 编程语言 > 正文

Laravel:$ request-> hasFile()不起作用

如何解决《Laravel:$request->hasFile()不起作用》经验,为你挑选了3个好方法。

我有一个表格,我得到了title,descriptionimage.当我dd($requests->all());,它返回以下正确的.

array:4 [
  "projectTitle" => "asd"
  "project_description" => "asd"
  "project_image" => "15940723_1336567063030425_9215184436331587115_n.jpg"
  "_token" => "eUj27iioySvIgut5Afu0ZHMgeVrO99a9e1o7Tw0w"
]

我将值存储为:

$project = new Portfolio;
$project->freelancer_id = Auth::user()->id;
$project->title = $request->get('projectTitle');
$project->description = $request->get('project_description');

if($request->hasFile('project_image')){
   $project_image = $request->file('project_image');
   $filename = time() . '.' . $project_image->getClientOriginalExtension();
   Image::make($project_image)->resize(197, 137)->save( public_path('/uploads/portfolios/' . $filename ) );
   $project->img = $filename;
}

$project->save();

但是imgDB表字段变为空.

if($request->hasFile('project_image'))没有得到该领域,

另外我有形式,其中该方法是POST与具有enctype="multipart/form-data"和一个用于文件我有.

我做错了什么?



1> Maniruzzaman..:

如果你的代码中的所有内容都会更正,那么你可能会错过enctype,我在启动时也错过了

或者,如果您使用Form Helper,则该文件包很容易包含在file = true字段中.

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



2> Mayank Pande..:

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

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

此选项导致您的表单将使用enctype="multipart/form-data"HTML表单标记中的选项呈现,这对于使用form

或者,如果您使用的是html表单,请确保您具有以下内容enctype="multipart/form-data"




3> 小智..:

您需要在php.ini中检查php指令upload_max_filesize

通常,其大小默认为2M。如果您上传的文件大于此大小

Laravel功能

$ request-> hasFile()

将返回

希望能帮助到你!!

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有