Я не могу понять, что здесь пошло не так, но раньше это был экспорт файла Excel, но только с заголовками, без данных.
Теперь он печатает, что он успешно подключен к базе данных, затем заданиезаканчивается без ошибок, но не создает новый файл Excel.Я изменил его, чтобы использовать PDO, когда он вообще перестал печатать файл.
Как я могу изменить это для правильного создания / записи в файл и фактической печати строк результатов из моего запроса?
$DB2Dev = new PDO("odbc:DSN=connnection1;", "user", "password");
if($DB2Dev){
$connectionMessage = "DB2 connection successful";
print_r($connectionMessage);
}else{
$connectionMessage = "DB2 NOT CONNECTED!";
print_r($connectionMessage);
}
$DB2Dev->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//Create and run query
$sql = "
SELECT manager, count(*) as items
from items
where start_date >= '2019-01-01'
group by manager
order by manager";
try {
$itemDetails = $DB2conn->prepare($sql);
$detailRslt = $itemDetails->execute();
}catch(PDOException $ex) {
$detailSelectError = "QUERY ONE FAILED!: " .$ex->getMessage();
}
$phpExcel = new PHPExcel;
$sheet = $phpExcel->getActiveSheet();
$sheet ->setTitle("Item Counts");
$sheet ->getColumnDimension('A') -> setAutoSize(true);
$sheet ->getColumnDimension('B') -> setAutoSize(true);
//Create header row
$sheet->setCellValue('A1', 'Manager');
$sheet->setCellValue('B1', 'Items');
$rowCount = 1;
while($row = $itemDetails->fetch(PDO::FETCH_ASSOC)){
var_dump($row);
$sheet->setCellValue('A'.$rowCount, $row['manager']);
$sheet->setCellValue('B'.$rowCount, $row['items']);
$rowCount++;
}
$writer = PHPExcel_IOFactory::createWriter($phpExcel, "Excel2007");
$writer->save('Item Counts.xlsx');