0

phpを使用して Web サイトを作成しました。その Web サイトで、あるテーブルからダウンロード可能な Excel シートに詳細を転送するようなレポートを作成したいと考えています。この作業を行う方法はありますか? 解決策を見つけるのを手伝ってください。

ありがとうございました。

4

3 に答える 3

1

データベースからすべての行を取得し、fputcsv 関数を使用して csv として配置できます。

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Disposition: attachment;filename=export.csv");
header("Content-Transfer-Encoding: binary");

$csvHandler = fopen("php://output", 'w');
while ($row = mysql_fetch_array ($res))
{
    fputcsv($csvHandler, $row);
}
于 2013-03-29T10:35:01.563 に答える
0

PHPExcelを使用してデータを生成できます

ファイルをダウンロードするための簡単な関数:

function show_download($data, $name, $type = "unknown/unknown") {
header('Content-Type: ' . $type);
header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Content-Disposition: attachment; filename="' . $name . '"');
header('Content-Length: ' . strlen($data));
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');

print $data;

exit();

}

于 2013-03-29T10:30:42.090 に答える
0

次のように CSV ファイルをエクスポートするスクリプトを作成できます。

header('Content-type: text/csv');
header("Content-Disposition: attachment; filename=clients_" . date("Ymd") . ".csv");

//Open PHP output stream
$fd = fopen('php://output', 'w');

$tab = array();

//get your results from your database
foreach ($results as $res)
   $tab[] = array($res->Client_Name, $res->Client_Email);

foreach ($tab as $val)
    fputcsv($fd, $val);

fclose($fd);
于 2013-03-29T10:32:10.800 に答える