尝试在laravel中上传文件,但似乎不存在

时间:2019-05-12 12:56:35

标签: php html laravel-5

嗨,我是laravel的新手,正在尝试上传.csv文件。

我的代码如下:

CLIENT_SIDE(BLADE)

 <form role='form' action="{{route('webscrape.upload')}}" method ="post" enctype="multipart/form-data" data-parsley-validate="">

   {{ csrf_field() }}

   <input type='file' name="data" required="">
   <br>
   <input type='submit' name='submit' value='Import' class="btn btn-info btn-lg" onclick="return confirm('Are you sure you want to submit these information?')">
 </form>

SERVER_SIDE(控制器)

public function uploadFile(Request $request){

    if ($request->input('submit') != null ){
       $file = $request->file('data');
       if (file_exists('data')) {
         dd('hello');
       } else {
        dd('hi');
      }
    }
}

即使上传文件,我也一直保持打招呼。我已经检查了路由,以确保名称和链接正常。任何建议都很好。谢谢

1 个答案:

答案 0 :(得分:0)

据我所知,您正在使用file_exists()来检查字符串而不是实际文件路径,在这种情况下它将永远无法工作。

我对您的建议:

您应该传递要检查的文件的实际路径。为此,您可以编写如下内容:

$file = $request->file('data');
$path = $file->getPathname();
if (file_exists($path)) {
   echo 'hello';
} else {
   echo 'hi';
}