HI,
我正在尝试在results.php中显示数据库的结果。在同一个文件中,在当前网页中显示所有数据后,我将根据此结果放置一个按钮来创建文件,以生成Excel文件。
我不知道该怎么做。我试过但它说你必须在任何回声之前强制excel文件下载,但我想显示以及生成一个excel文件。这可能还是我错过了什么?任何人都可以让我知道如何正确地做到这一点?
答案 0 :(得分:3)
您必须更改页面的标题,因此您必须在新窗口中打开excel文件的输出。
标题类型:“application / vnd.ms-excel”。
如果您想创建“好的”Excel表格,请查看PHPExcel
答案 1 :(得分:2)
您可能正面临'标头已设置'错误。您需要分离这两个步骤才能实现这一目标。用于显示的一步和用于创建和下载Excel文件的步骤。
另一方面,您也可以组合数据显示和Excel创建,最终显示下载链接。
只是在黑暗中,让我们知道你想走哪条路,我们会帮助你......
答案 2 :(得分:2)
之前在StackOverflow讨论过这个问题:
Export MYSQL result to Excel..
PHP code to convert a MySQL query to CSV
另见这些示例和教程:
Easy way to create XLS file from PHP
Export MYSQL data to CSV – PHP tutorial
答案 3 :(得分:1)
您可以创建一个{x 3} - 文件,它比xls文件简单得多,最好的部分是excel支持.cvs文件。
然后,当您向用户输出数据时,请使用一个名为$cvs
的单独变量,您可以在.cvs内完成输出相同的数据,并在完成后您.cvs-format $cvs
到文件。
然后你只需链接到页面底部的那个文件。
尽管如此,您可能需要write。
答案 4 :(得分:1)
首先设置标题,然后回显CSV输出:
header("Content-type: application/text/x-csv");
header("Content-disposition: attachment; filename=report.csv");
echo "value1,value2\n";
echo "value3,value4\n";