关于php ajax文件上传中,FormData的使用和编码问题
关于php ajax文件上传中,FormData的使用和编码问题
非洲小毛驴 发表于1年前
关于php ajax文件上传中,FormData的使用和编码问题
  • 发表于 1年前
  • 阅读 38
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

最近项目中需要一个文件上传的功能,就想写一个 ajax无刷新的文件上传

首先你需要一个file来存储需要上传文件的文件名

当file被改变时,读取数据,并插入至formdata中,然后通过ajax上传到后端

这里需要注意

processData设置为false。因为data值是FormData对象,不需要对数据做处理。
cache设置为false,上传文件不需要缓存。
contentType设置为false。是因为数据是formData。

这三项必须要写,否则会报错。

这是一个坑。然后数据传到后台之后(上传文件就不讲了),由于编码问题,在move_uploaded_file的时候会出现错误,我们需要对文件名进行编码处理

$_FILES['file']['name'] = iconv('UTF-8','gb2312',$_FILES['file']['name']);

这样基本上就可以成功上传文件了

 

标签: PHP jQuery
共有 人打赏支持
粉丝 0
博文 2
码字总数 1190
×
非洲小毛驴
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: