嗨,我是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');
}
}
}
即使上传文件,我也一直保持打招呼。我已经检查了路由,以确保名称和链接正常。任何建议都很好。谢谢
答案 0 :(得分:0)
据我所知,您正在使用file_exists()
来检查字符串而不是实际文件路径,在这种情况下它将永远无法工作。
我对您的建议:
您应该传递要检查的文件的实际路径。为此,您可以编写如下内容:
$file = $request->file('data');
$path = $file->getPathname();
if (file_exists($path)) {
echo 'hello';
} else {
echo 'hi';
}