我不知道这里出了什么问题,但以前这是导出一个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');发布于 2019-02-24 17:57:11
它不起作用,因为当你使用它时'$DB2conn‘并不存在。我认为应该是$DB2Dev。如果你修复了它,这个脚本就会正确执行。
https://stackoverflow.com/questions/54848823
复制相似问题