Я использую скрипт, который экспортирует в Excel.Этот скрипт ранее работал с использованием mysqli и расширения Excel .xls.
Теперь я пытаюсь использовать расширение Excel .xlsx.Хотя электронная таблица экспортируется как файл .xlsx, я не получаю никаких данных на листе.
Вот код:
<?php
include('../includes/database.php');
global $ts;
$ts = date('mdY-His');
$sql = "SELECT column1, column2, column3 FROM table WHERE column1 IS NOT NULL";
$stmt = $dbc->query($sql);
header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
header("Content-Disposition: attachment; filename=GRI&PSSReport_CustomerOnBoarding-".$ts.".xlsx");
header("Pragma: no-cache");
header("Expires: 0");
header("Content-Transfer-Encoding: binary ");
/*******Start of Formatting for Excel*******/
$sep = "\t"; //tabbed character
for ($i = 0; $i < $stmt->columnCount(); $i++) {
$col = $stmt->getColumnMeta($i);
//print_r($col);
print_r($col['name'] . $sep);
}
print("\n");
//start while loop to get data
while($rows = $stmt->fetch(PDO::FETCH_NUM)){
//print_r($rows);
foreach($rows as $row){
echo $row . $sep;
}
print("\n");
}
?>
Я не уверен, почему лист Excel пуст,Как можно решить эту проблему?