警告:第 0 行未知中的多部分/表单数据 POST 数据中缺少边界
Posted
技术标签:
【中文标题】警告:第 0 行未知中的多部分/表单数据 POST 数据中缺少边界【英文标题】:Warning: Missing boundary in multipart/form-data POST data in Unknown on line 0 【发布时间】:2015-02-22 12:04:32 【问题描述】:我正在开发文件上传器,它在输入更改时上传图像我的 html 表单代码是
<form method="post" enctype="multipart/form-data">
<input name="uploaded[]" type="file" id="file_upload"/>
</form>
我的 javascript 和 Ajax:
document.getElementById("file_upload").onchange = function()
var id = document.getElementById("user_id").innerHTML;
var file = document.getElementById("file_upload").files[0];
alert(file.size);
var formdata = new FormData();
formdata.append("filer",file,true);
var ajax = new XMLHttpRequest();
ajax.onreadystatechange =
function()
if(ajax.readyState==4 && ajax.status==200)
document.getElementById("one").remove();
var img = document.createElement('img');
var first_path = '/user_image/';
var path = first_path.concat(id,'.png');
img.setAttribute('alt','User image');
img.setAttribute('id','one');
img.setAttribute('src',path);
document.getElementById("user").appendChild(img);
alert("end");
else
document.getElementById("one").remove();
var img = document.createElement('img');
img.setAttribute('src','/img/loading.gif');
img.setAttribute('alt','User image');
img.setAttribute('id','one');
document.getElementById("user").appendChild(img);
ajax.open("POST","upload_image.php");
ajax.setRequestHeader("Content-Type", "multipart/form-data");
ajax.send(formdata);
;
而我的php代码很简单,就是测试一切是否正常
require("../includes/config.php"); //config folder to start the session
if($_SERVER["REQUEST_METHOD"]=="POST")
echo '<pre>',print_r($_FILES),'</pre>'; //dumping some variable and arrays to see where the problem is
我从服务器收到的请求是警告:第 0 行未知的多部分/表单数据 POST 数据中缺少边界,但我发送了表单数据和请求标头并打开了文件。
【问题讨论】:
【参考方案1】:您只需删除以下行:
ajax.setRequestHeader("Content-Type", "multipart/form-data");
【讨论】:
救了我的命,TY!【参考方案2】:而不是以multipart/form-data
发送数据:
ajax.setRequestHeader("Content-Type", "multipart/form-data");
您应该将其发送为application/json
:
ajax.setRequestHeader("Content-Type", "application/json");
【讨论】:
如果非要上传utf-8文件名?以上是关于警告:第 0 行未知中的多部分/表单数据 POST 数据中缺少边界的主要内容,如果未能解决你的问题,请参考以下文章
PHP 警告:8978294 字节的 POST 内容长度超过第 0 行未知中 8388608 字节的限制
PHP 警告:8978294 字节的 POST 内容长度超过第 0 行未知中 8388608 字节的限制
警告:25447804 字节的 POST 内容长度超出第 0 行未知中 8388608 字节的限制
警告:20616317 字节的 POST 内容长度超出第 0 行未知中 8388608 字节的限制
警告:20616317 字节的 POST 内容长度超过第 0 行未知中 8388608 字节的限制
DataTables 警告(表 id = 'table-filter'):从数据源请求未知参数 '0' 用于数据表中的第 0 行错误