当前位置: 首页 > news >正文

ajax的基本使用(上传文件)

index.html

<html> <head> <title>js</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> </head> <body> <div> 我是显示内容 </div> <div> <input type="file" name="myFile" class="file_class"/> <button class="ajax_btn">原生ajax</button> </div> </body> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script type="text/javascript" src="./index.js"> </script> </html>

index.js

$(function(){ $(".ajax_btn").click(function(){ var xhr = new XMLHttpRequest(); xhr.open("post","http://localhost",true); xhr.onreadystatechange = function(e) { if(xhr.readyState == 4 && xhr.status == 200) { console.log(JSON.parse(xhr.responseText)); } } var file = $(".file_class")[0].files[0]; var fd = new FormData(); fd.append("info","zlx"); fd.append("fileInfo",file); xhr.send(fd); }); })

index.php

<?php if($_FILES['fileInfo']) { move_uploaded_file($_FILES['fileInfo']['tmp_name'],"./".$_FILES['fileInfo']['name']); } $result = array("code"=>200,"msg"=>$_POST["info"]."上传了图片"); print_r(json_encode($result)); ?>

注:

ajax使用FormData对象时,不用再去设置表头Content-type,FormData可以用js来实现form表单上传的对象,通过append来添加传递给后台的值,如,我们这里传了info,值为 zlx,fileInfo,值为一个文件对象,$(".file_class")[0].files[0]用来获取file对象,就是我们选择的文件,需要在PHP中使用$_FILES['fileInfo']来获取。

通过浏览器调试模式看到请求头,

这个fileInfo是一个二进制的文件。

通过move_uploaded_file来把上传来的缓存文件放到我们希望保存的地方。

http://www.cnnetsun.cn/news/187461.html

相关文章:

  • Sunshine多设备游戏串流终极指南:打造完美家庭娱乐中心
  • 抖音视频批量下载神器:告别繁琐,轻松收藏心仪内容
  • 终极演讲时间管理方案:PPTTimer智能助手完全指南
  • Flutter 2025 状态管理工程体系:从简单共享到复杂协同,构建可预测、可测试、可维护的状态流架构
  • ComfyUI-VideoHelperSuite视频合成节点完整修复终极指南
  • WarcraftHelper终极指南:解决魔兽争霸现代系统兼容性难题
  • Cats Blender插件:5分钟完成VRChat模型优化的终极指南
  • ncmdumpGUI:轻松解密网易云音乐加密文件的专业解决方案
  • ES在物联网实时数据场景中的部署方案
  • 城通网盘直链解析终极方案:3分钟实现高速下载的完整教程
  • 城通网盘直连解析器:3步告别繁琐下载流程
  • Sunshine游戏串流:打造家庭多设备娱乐中枢的完整指南
  • 虾皮怎样避免订单逾期出货
  • WarcraftHelper:让经典魔兽争霸在现代系统重获新生
  • Sunshine游戏串流终极指南:三步打造个人云游戏系统
  • WarcraftHelper:魔兽争霸III现代化优化完整指南
  • 魔兽争霸III兼容性修复:WarcraftHelper技术指南
  • 终极指南:wx-calendar微信小程序日历组件从零到精通实战
  • 闲鱼数据采集工具:5分钟快速上手安卓自动化爬虫
  • Windows平台控制器驱动冲突终极解决方案:多软件共存架构深度解析
  • 魔兽争霸III兼容性修复工具:解决现代系统运行难题
  • Sketch MeaXure:智能化设计标注的革新之路
  • 魔兽争霸III现代化重生指南:解锁经典游戏的终极体验
  • “三层过滤法”降ai率绝了,一篇文章教你如何快速降ai【附降ai提示词】
  • 跨国企业 AI-ITSM 多终端支持 —— 构建智能全球服务管理平台
  • 如何在5分钟内配置DS4Windows:PC游戏手柄的终极兼容方案
  • Gofile下载器:告别手动点击的智能文件管理方案
  • 【IC】HBM的通信物理层
  • WarcraftHelper:魔兽争霸3终极优化工具,让老游戏焕发新生机
  • WarcraftHelper:解决魔兽争霸III兼容性问题的终极方案