Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过js post调用的fputcsv未下载_Javascript_Php_Fputcsv - Fatal编程技术网

Javascript 通过js post调用的fputcsv未下载

Javascript 通过js post调用的fputcsv未下载,javascript,php,fputcsv,Javascript,Php,Fputcsv,我正在尝试将一个JS链接发布到另一个php文件,以导致csv下载。除了csv下载,一切都正常进行。我可以在chrome的DevTools中看到csv数据,但csv没有下载 链接的目标为空。。 我不知道在JS的什么地方放空白 我知道我可以用GET(不使用JS)轻松完成这项工作,但我想用POST完成这项工作 PHP: 要使用POST并下载文件,您可以做的一件事是创建一个html表单并使链接提交它 <form action=XL.php method=post id=export target=

我正在尝试将一个JS链接发布到另一个php文件,以导致csv下载。除了csv下载,一切都正常进行。我可以在chrome的DevTools中看到csv数据,但csv没有下载

链接的目标为空。。 我不知道在JS的什么地方放空白

我知道我可以用GET(不使用JS)轻松完成这项工作,但我想用POST完成这项工作

PHP:


要使用POST并下载文件,您可以做的一件事是创建一个html表单并使链接提交它

<form action=XL.php method=post id=export target=_blank>
<input type=hidden name=e value=...etc
</form>

$("#data-download").on("click", function(e){ $('#export').submit() });


您在这里发出后台请求,您不能以这种方式触发“前台”中的下载对话框。完美。这将在很多方面帮助我!
$("#data-download").on("click", function(e){
$.post("XL.php", { e: "<?php echo $e?>", time: "2pm" } );  //Your values here..
});
$filename = "Ensemble-D$div$ensabbr.csv";
$fp = fopen('php://output', 'w');
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
#header('Content-type: application/csv');
header('Content-Disposition: attachment; filename='.$filename);

// output the column headings
fputcsv($fp, array("filename.csv"));
fputcsv($fp, array('column','headings'));

$query = "SELECT a.fields, b.fields FROM entries a, other b ORDER BY something";
$result = mysqli_query($con, $query);
while($row = mysqli_fetch_row($result)) {
    fputcsv($fp, $row);
}
<form action=XL.php method=post id=export target=_blank>
<input type=hidden name=e value=...etc
</form>

$("#data-download").on("click", function(e){ $('#export').submit() });