我是PHP的新手,我正在尝试做一个小实验来学习。
我想创建一行单词,单击它时,将从我在数据库中的表中下载csv文件。
到目前为止,这是我提出的(甚至不是我想做的。但我能够把它变成一个超链接)。
echo "<a href=http://www.google.com>Click here to visit site</a>";
假设我已连接到我的数据库,我将如何连接“点击此处访问网站”以下载csv文件,例如,我的数据库ABC的table1?
我认为必须有一些循环读取table1中的行并将其写入csv文件,对吧?
答案 0 :(得分:1)
创建一个具有以下代码的文件单独文件,并在当前文件中创建一个超链接,如:
echo "<a href='http://<your domain name>/test.php'>Click here to visit site</a>";
<?php
//test.php
// output headers so that the file is downloaded rather than displayed
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=data.csv');
// create a file pointer connected to the output stream
$output = fopen('php://output', 'w');
// output the column headings
fputcsv($output, array('Column 1', 'Column 2', 'Column 3'));
// fetch the data
$rows = mysqli_query($conn, 'SELECT name, email FROM users limit 10');
// loop over the rows, outputting them
while ($row = mysqli_fetch_assoc($rows)) fputcsv($output, $row);
?>