我试图创建一个循环,在执行时它会创建多个 csv 文件并下载它们。这是我的代码:
session_start();
require '../connect.php'; //connect.php has connection info for my database
// and uses the variable $connect
$sqldept = "SELECT department_name from department;";
$departments = mysqli_query($connect, $sqldept);
while ($department = mysqli_fetch_array($departments)) {
$department = $department[0];
header('Content-Type: text/csv; charset=utf-8');
header("Content-Transfer-Encoding: UTF-8");
header('Content-Disposition: attachment; filename=summary-' . $department . '.csv');
header("Cache-Control: no-cache, no-store, must-revalidate"); // HTTP 1.1
header("Pragma: no-cache"); // HTTP 1.0
header("Expires: 0"); // Proxies
$date = date("Y-m-d", strtotime("-28 days" . date("Y-m-d")));
$edate = date("Y-m-d");
$startdate = "(time.dateadded BETWEEN '$date' …Run Code Online (Sandbox Code Playgroud) 我有一个按钮,当点击时,应该将变量提交给ajax调用,然后创建和下载csv,但由于某种原因,文件只是没有下载.然而,我在Chrome Dev工具中获得了正确的输出:
这是我有的:
的index.php
<form class="navbar-form navbar-left" method="post">
<input hidden id="ajaxquery" value="<?php echo $ajaxquery;?>">
<button type="button" class="btn btn-success btn-lg" id="downloadcsv">Download CSV</button>
</form>
Run Code Online (Sandbox Code Playgroud)
的script.js
$(document).ready(function() {
var csvquery = function(){
function getUrlParameter(sParam)
{
var sPageURL = window.location.search.substring(1);
var sURLVariables = sPageURL.split('&');
for (var i = 0; i < sURLVariables.length; i++)
{
var sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] == sParam)
{
return sParameterName[1];
}
}
}
ajaxquery = $('#ajaxquery').val();
department = getUrlParameter('department');
startdate = getUrlParameter('startdate');
enddate = getUrlParameter('enddate');
staffsearch = getUrlParameter('staffsearch');
$.ajax({ …Run Code Online (Sandbox Code Playgroud)