发送页面这样新建也个formdata 然后post到一个新页面:
var fileObj = document.getElementById("file").files[0];
var FileController = "photos_ajax.php";
var form = new FormData();
form.append("file", fileObj);
var xhr = new XMLHttpRequest();
xhr.onreadystatechange=function(){
if (xhr.readyState==4 && xhr.status==200){
document.getElementById("pictures").innerHTML=xhr.responseText;
}
}
xhr.open("post", FileController, true);
xhr.upload.addEventListener("progress", progressFunction, false);
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xhr.send(form);
POST过去的内容
-----------------------------4684741826146840071828436148
Content-Disposition: form-data; name="file"; filename="1.jpg"
Content-Type: image/jpeg
一堆乱码
一堆乱码
一堆乱码
-----------------------------4684741826146840071828436148--
可是在POST的接收页面我该怎么接收到这些内容呢
$_FILES['file'] 神马的不起作用
var form = new FormData();
form.append("file", fileObj);
这种应该怎么接收呢?
用$_POST 接收到的是 [object FormData]
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");这里的content-type改成multipart/form-data··然后用$_FILE接收
追问按您说的修改之后,
print_r($_POST);
print_r($_FILES);
这两个的输出结果都是空数组
Array
(
)
Array
(
)
这是为什么
post过去的http是什么?
追问我不知到什么是post过去的http
但是我有firebug显示的头信息,不知道有没有用
你是要ajax上传么?···如果是的话···用这个应该是不行的·····
本回答被提问者采纳后台怎么取得js中new formdata封装的数据
假设后台是php 只需要为formdata提供一个请求的接口 前端请求这个接口假设是post请求 你可以使用 $_POST["xxx"]formdata里面的健 如果这个请求有文件的话你可以通过$_FILE获取相关信息
el-upload php如何接收?
首先在vue文件中定义一段 el-upload代码段,如下图:定义一个http-request属性 el-upload上传组件代码 在http-request属性中调用一个定义的方法,方法中执行图片上传到php后端的操作,可以用 axios 调用php后端api执行上传,注意上传文件之前要 new FormData(),因为是表单上传,将文件 append到 formData中。
axios+post方法提交formdata步骤详解
这应该是最常见的post编码方式,一般的表单提交默认以此方式提交。大部分服务器语言对这种方式都有很好的支持。在PHP中,可以用$_POST[“key”]的方式获取到key的值,在node中我们可以使用querystring中间件对参数进行分离 app.post("\/server"function(req,res){ req.on("data"fun...
我用formdata进行ajax上传文件,第一次上传肯的是报错
般说,段错误指访问内存超系统所给程序内存空间通值由gdtr保存四吧位寄存器其三二位保存由 指向 gdt表一三位保存相应于gdt标三位包括程序否内存及程序cpu运行级别,指向gdt由陆四位单位表 张表保存着程序运行代码段及数据段起始址及与相应段限页面交换程序运行级别内存粒度等等信息旦程序发越界 访问cpu产相应...
query string、formData和request payload的区别,你真的知道吗?
当请求方式为 GET,前端通过 URL 的“问号传参”格式,即 query string Parameters,传递数据。例如,请求地址为 newsList.php,参数为 pageIndex 和 pageCount,则格式为 newsList.php?pageIndex=1&pageCount=10。在 Chrome 浏览器的 network 视图中,可以观察到 query string Parameters 的请求格式。对...
如何使用formData上传file数组
type: "POST",data: data,dataType: 'json',processData: false,\/\/ *重要,确认为false contentType: false,beforeSend: function () { ... },success: function (res) { console.log(res);},error: function (res) { ...} });php 部分 接收数组 fileField='file';name = $_FILES$...
php中如何获取post的请求包的原始内容
_POST['fieldname'];file_get_contents("php:\/\/input");GLOBALS['HTTP_RAW_POST_DATA'];
怎么在JS中循环获取一个页面的所有表单,并提交
不需要循环,用FormData就可以了。var form=document.getElementById("showDataForm");var fd = new FormData(form);.ajax({ url: "upload.php",type: "POST",processData: false,contentType: false,data: fd,success: function(d) { console.log(d);} });
一个js 数组怎么传到后台
--后台$_POST后,会得到一个一维数组,数组单元就是由form表单数据组成的。-->function test(){\/\/获取dom节点var fm = document.getElementsByTagName('form')[0];\/\/利用HTML5 FormData对象获取表单数据\/\/并把DOM表单对象作为参数传给FormDatavar fD = new FormData(fm);\/\/可以追加数据fD.append(...
前端多文件上传(前端多文件上传怎么弄)
说明:第一种方法提到了创建多个type=‘hidden’的input来发送签名数据,这儿可以用formData.append方法来代替该操作,避免了dom中有多个input的情况出现。最后将file数据也append到formData发送到服务器即可完成上传。怎么用一次POST请发送多个文件使用multipart\/form-data发送文件如果要在MIDP客户端向服务器上传...