Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php $request->hasFile()在上载时返回false_Php_Laravel - Fatal编程技术网

Php $request->hasFile()在上载时返回false

Php $request->hasFile()在上载时返回false,php,laravel,Php,Laravel,在我的Laravel 5.8应用程序中提交请求时,我似乎无法让我的应用程序上载文件。无论我上传什么类型的文件,hasFile总是返回false 类型 dd输出 enctype=多部分/表单数据已包含在我的表单中。 我测试了多个大小约为50-80KB的文件 我正在同一环境中运行另一个Laravel应用程序,没有任何问题。我还测试了将相同的图像上传到该应用程序,没有任何问题。这让我相信这与php.ini的错误配置无关 dd$request->all;返回特征\u img而不是文件对象的字符串名称 使

在我的Laravel 5.8应用程序中提交请求时,我似乎无法让我的应用程序上载文件。无论我上传什么类型的文件,hasFile总是返回false

类型 dd输出 enctype=多部分/表单数据已包含在我的表单中。 我测试了多个大小约为50-80KB的文件 我正在同一环境中运行另一个Laravel应用程序,没有任何问题。我还测试了将相同的图像上传到该应用程序,没有任何问题。这让我相信这与php.ini的错误配置无关 dd$request->all;返回特征\u img而不是文件对象的字符串名称 使现代化
当我改变我的观点时,我没有意识到我有两个相同路线的动作。愚蠢的我。感谢所有帮助我排除故障的人。

我在一次安装中使用 在web.php中

use Illuminate\Http\Request;
Route::get('test', function(){
    return view('test');
});
Route::post('test', function(Request $request){
    dd($request->hasFile('test'));
})->name('test');
在test.blade.php中

<form action="{{ route('test') }}" method="POST" enctype="multipart/form-data">
    @csrf
   <div class="form-group py-50">
     <input type="file" name="test" id="featured_img">
   </div>                    

    <div class="form-group">    
      <input type="submit" class="btn btn-primary" value="Upload Image" name="submit">
    </div>

  </form>
$request->hasFile'test'返回true,请检查控制器或路由文件中的此代码,如果您遇到任何问题,请告诉我

您应该使用@stack向刀片添加脚本,而不是@section

更新

根据更新的查看页面代码,您的视图中有两个表单发布到同一路线,请检查第一个表单是否已关闭,第二个表单是否已打开。

检查并尝试某些情况:

检查php.ini中的最大文件大小上载 检查是否存在enctype=标记中的多部分/表单数据。 标记中的check方法必须使用POST方法,Web.php中的route必须具有POST-route
$request->file'featured_img'返回什么?dd$request->file'featured_img';返回null你能检查一下你在laravel.log文件中得到了什么吗?你能试试这个请求吗->has'featured_img'@PrafullaKumarSahu日志中没有错误删除value属性没有任何区别。hasFile仍然返回false@EricS. 你能添加$request->all并告诉我你现在得到了什么吗?和之前一样数组:7[▼ _token=>sREFSO8bs0rWil05AESVrwEl37XtKOJAF2nCkTNR状态=>published featured_img=>example.jpg submit=>Upload Image]@EricS。我已经更新了我的答案,请检查并让我知道结果。当我创建新的测试刀片并将您的代码添加到我的web.php文件时,您的测试在我的环境中运行
array:7 [▼
  "_token" => "sREFSO8bs0rWil05AESVrwEl37XtKOJAF2nCkTNR"
  "status" => "published"
  "featured_img" => "example.jpg"
  "submit" => "Upload Image"
]
use Illuminate\Http\Request;
Route::get('test', function(){
    return view('test');
});
Route::post('test', function(Request $request){
    dd($request->hasFile('test'));
})->name('test');
<form action="{{ route('test') }}" method="POST" enctype="multipart/form-data">
    @csrf
   <div class="form-group py-50">
     <input type="file" name="test" id="featured_img">
   </div>                    

    <div class="form-group">    
      <input type="submit" class="btn btn-primary" value="Upload Image" name="submit">
    </div>

  </form>