0
PHPを初めて使いました。私はPHPを使用してMySQLデータベースからExcelシートを生成するために次のコードを使用しています。PHPを使用してMySqlデータベースからExcelシートを生成する
<?php
include("../Connection/Connection.php");
$db_con=new Connection();
$db_con->get_connection(); //Opens a database connection. This function is contained in the Connection.php which is included above.
$result = mysql_query("SELECT * FROM country");
if (!$result) die('Couldn\'t fetch records');
$num_fields = mysql_num_fields($result);
$headers = array();
for ($i = 0; $i < $num_fields; $i++)
{
$headers[] = mysql_field_name($result , $i);
}
$fp = fopen('php://output', 'w');
if ($fp && $result)
{
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="export.csv"');
header('Pragma: no-cache');
header('Expires: 0');
fputcsv($fp, $headers);
while ($row = mysql_fetch_array($result))
{
fputcsv($fp, array_values($row));
}
die;
}
?>
上記のコードは動作していると、それは、指定されたファイルexport.csv
を生成するが、問題は、それが二回、このファイルでのMySQLから各列を生成することです。つまり、各列は2回複製されます(表示されるヘッダーは複製されません)。このコードで何が問題になっていますか?各列を正確に1回表示するためには、どのような変更を行う必要がありますか?
私はあなたが言ったように、それは期待通りに機能しました。御時間ありがとうございます。 – Bhavesh