$ request-> file返回null-Laravel

时间:2019-03-21 04:35:02

标签: php jquery laravel xampp laravel-blade

我试图将文件从PC上传到我的Laravel应用程序中并存储到XAMPP服务器上。不幸的是,每次当我想使用$request->file检查文件扩展名时,它总是返回null。

但是当我尝试调试时,我看到了从系统上载的文件映像名称。

这是来自前端的代码:

<form action="{{action('CompaniesSettingController@update', $edit_info->id)}}" method="post",enctype="multipart/form-data">

<div class="p-image">
    <i class="fa fa-camera upload-button"></i>
    <input class="file-upload" name="company_profile" type="file" id="" accept="image/*"/>
</div>

此处的控制器代码:

dd($request->all());  
$filenameWithExt = $request->file('company_profile')->getClientOriginalName();

这是我从dd那里得到的

array:12 [▼

  "company_profile" => "myimage.jpg"
  "name" => "App Name"
  "email" => "myapp@gmail.com"
  "phone_number" => "12345678"
  "company_overview" => "dfsa"
  "mission" => "dfs"
  "working_evn" => "fgsd"
  "company_ach" => "dfsgdfs"
  "facebook" => "dfsg"
  "linkedin" => "dsf"
  "website" => "sdfsfdg"
 ]

如您所见,我上传的文件名为"company_profile" => "myimage.jpg"。因此,我想获取该图像名称,但它返回null,并且该文件图像应存储在我的应用程序中,并且文件名将存储在数据库中。

1 个答案:

答案 0 :(得分:1)

删除method="post"属性后的逗号,并添加空格。

更改此行:

<form action="{{action('CompaniesSettingController@update', $edit_info->id)}}" method="post",enctype="multipart/form-data">

<form action="{{action('CompaniesSettingController@update', $edit_info->id)}}" method="post" enctype="multipart/form-data">

然后检查dd($request->all())以确保它不是针对company_profile的字符串。