将发布数据从jQuery发送到phpexcel

时间:2017-01-23 10:23:34

标签: javascript php jquery

我正在尝试使用jQuery打开excel表,但我还需要在POST中将数据发送到该php文件。我正在使用phpexcel类来执行此操作。我使用phpexcel没有问题,但是尝试打开一个窗口并发布数据是个问题。

下一行确实打开了我的Excel文件

window.open('boo.php','_self');

好的,所以我尝试了以下代码

$.post("boo.php", {
  BANANA: "A banana",
  CODE: "excel"
  },function(data){
    var w = window.open('','_self');
    w.document.write(data);
    w.document.close();
});

上面确实如此,打开一个新页面,它确实发送了我的两个post varibles,但是有一个问题。

而不是我的excel表单打开它会向页面发布乱码。

所以我想我的第二段代码,不知何故是在标题之前插入一些内容,然后phpexcel失败了。

我的PHP代码目前非常简单,因为如果您遇到问题,最好简化它。

<?php
include_once 'core/bananas.php';
$excel = new globalExcel();
$excel->test();
?>

那么有没有办法打开我的phpexcel文件并将数据发布到它而不会搞砸标题?

1 个答案:

答案 0 :(得分:0)

是的,我正在发布我的解决方案,但这不是我的问题的确切答案。我想通过jQuery来做。

我在之前的项目中做的是发布到php并创建会话变量然后打开excel页面,使用window.open返回jQuery。 这次不是一个选项,因为我需要发布变量而不是Session变量,因为我从两个不同的地方调用相同的代码。

我的解决方案不是使用jQuery来发送信息,而是使用隐藏的表单。所以我没有回答我的问题,而是给出了一个可能的替代解决方案。

<form id="excel" action="boo.php" method="post" style="display:none">
    <input type="hidden" name="VPAGE" value="mileage">
    <input type="hidden" name="CODE" value="excel">
</form>
<button class="btn btn-default btn-xs" form="excel"><i class="fa fa-file-excel-o" aria-hidden="true"></i> Excel</button>

正如我所说,这不是我想要的解决方案,但确实有效。所以,如果有其他人被卡住,我会把这个答案放进去。

如果有人知道如何在jQuery中执行此操作,我仍然会很高兴看到答案。