php - 导出 csv 文件以使用 PHP 从 mysql 下载

标签 php mysql

我正在尝试从我的 mysql 数据库中获取 csv 文件并将其发送到浏览器以供下载。

我读了一些关于它的帖子,但我无法下载文件。

当我运行我的代码时,文件没有下载。

我通过 ajax 将 POST 发送到此文件。

这是我的代码:

<?php

    download_send_headers();

    $mysqli = new mysqli(*****);

    $mysqli->set_charset("utf8");

    $sql = "SELECT trainer, COUNT(trainer) FROM personal_traning WHERE gym = ? GROUP BY trainer"; 

    $stmt = $mysqli->prepare($sql);

    $stmt->bind_param('s', $_POST['gym']);

    $stmt->execute();

    $stmt->store_result();

    $stmt->bind_result($trainer, $trainerCount);

    $f = fopen('php://output', 'w'); 

    $results = array();

    $row = array();

    $row[0] = "Trainer name";
    $row[1] = "Count";

    fputcsv($f, $row); 

    while ($stmt->fetch()) 
    {

    $row = array();

    $row[0] = $trainer;
    $row[1] = $trainerCount;

    fputcsv($f, $row); 

    }

    $output = stream_get_contents($f);

    fclose($f);

    echo $output;

    die();

function download_send_headers() {

    header('Content-Disposition: attachement;filename="name";');

    header('Content-Type: application/csv; charset=UTF-8');
}


?>

我该怎么做?

最佳答案

尝试将 .csv 添加到 header 的文件名中。

关于php - 导出 csv 文件以使用 PHP 从 mysql 下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22659318/

相关文章:

php - 在 Javascript 中调用 Php 函数

php - 表单数据不会添加并且 MySql 表保持为空

PHP, XML 如何获取属性?

php - mysql插入数据到另一个

php - 循环获取议程和白天时间并填充数据库中的数据

php - 为什么必须手动抛出异常?

javascript - jQuery 和 Ajax - 在页面加载时将项目加载到选择输入

python - 我无法使用 django 连接到数据库

mysql - 基本触发工作

mysql - 分组以提取半结构化数据中的公共(public)值