我试图将文件从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,并且该文件图像应存储在我的应用程序中,并且文件名将存储在数据库中。
答案 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的字符串。