繁体   English   中英

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

[英]Export csv file to download from mysql with PHP

我试图从我的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添加到标题的文件名中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM