一个最基础的laravel文件上传,但是不管怎么搞,传过去的$request就是取不到文件名,
BUG如下
代码如下:
这个是视图层,表单提交的文件上传的代码
都快挠破头了,还是不知道为啥取不到文件名,求助...在赶项目,在线等
PS:
是有的,enctype="multipart/form-data",
这个是打印出来的源码...
感谢大家的回复,结一下帖子吧
搞了半天也不知道是什么问题,最后只能用普通form提交了,
表单
上传的方法
没用$request,改用Input类了,总之是好用了,把解决方案发一下,多谢大家
5 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
$name = Input::file('photo')->getClientOriginalName();
getClientOriginalName是Symfony\Component\HttpFoundation\File\UploadedFile类的方法。
一般不用Request,可能反向申请依赖注入,Facade有它存在的意义。
宝慕林4294392
TA贡献2021条经验 获得超8个赞
建议你用Postman请求一下,advertise是请求的参数吗,把相关请求的url和参数都写在postman里面,然后再发出来,这样更直观一些
慕村9548890
TA贡献1884条经验 获得超4个赞
表单上传文件,要加上这个:enctype="multipart/form-data"。
建议先打开Network,看是否有传过去,可能html部分没有传过去,那么控制器里不管怎么打印都是拿不到的。
如果看过Network了并且html有提交数据的话,laravel要考虑csrf。
加上这个:{{ csrf_field() }}。
参考文档:HTTP层 —— CSRF保护
也可以从 CSRF 保护中排除指定 URL。
- 5 回答
- 0 关注
- 1426 浏览
添加回答
举报
0/150
提交
取消