我有一个HTML表,我通过Table2Excel.js插件从中生成.xls文件。我试图将此文件发布到服务器,以便我可以使用PHP将其保存在服务器上。我试图以blob格式发送文件,但我的$ _POST返回空。 下面是我的ajax代码:
var blob = new Blob([e.format(fullTemplate, e.ctx)], { type: "application/vnd.ms-excel" });
var dob = "okay lets check";
window.URL = window.URL || window.webkitURL;
link = window.URL.createObjectURL(blob);
a = document.createElement("a");
a.download = getFileName(e.settings);
a.href = link;
document.getElementById("getPDF").value = link;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
var formdata = new FormData();
formdata.append('excelFile', blob);
$.ajax({
url:'savetoserver.php',
type:'post',
data:formdata,
processData: false,
contentType: false,
}).done(function (data){
alert(data);
}).fail(function (xhr, status, err) {
alert(err);
});
和php代码基本上是atm
<?php print_r($_POST); ?>
答案 0 :(得分:0)
您需要使用$_FILES
才能在PHP中接收文件。这是一个PHP脚本示例。
if (0 < $_FILES['excelFile']['error'])
echo 'Error: ' . $_FILES['excelFile']['error'];
else
move_uploaded_file ($_FILES['excelFile']['tmp_name'], $_FILES['excelFile']['name']);