2012-07-06 51 views
10

我想让我的Excel文件充满从数据库中获得的一些数据,例如某人的姓名和年龄。使用PHPExcel制作自动生成的Excel文件

说我的数据库中有10个人。我想要这10个人在我的Excel文件。

因此,基本上,你会得到:

名字年龄

PERSON120年

PERSON225年

等。我知道如何设置NAME和AGE的东西,但我怎么去循环数据并将其写入Excel文件?我在PHPExcel的文档中找不到任何关于它的信息。

这是我的MySQL:

$query = "SELECT * FROM bestelling"; 

$result = mysql_query($query) or die(mysql_error()); 

while($row = mysql_fetch_array($result)){ 
    $name = $row['name']; 
    $age = $row['age']; 
} 
+0

根据您的代码编辑答案:-)请检查。 – Vimalnath 2012-07-06 11:09:04

+0

这是为你工作吗? – Vimalnath 2012-07-06 11:41:42

+0

看看http://phpexcel.codeplex.com/discussions/246121/为例 – 2012-07-06 15:16:18

回答

35

我假设你已经创建Excel对象。我将它称为$ objPHPExcel以符合它们的示例。在这种情况下,你可以循环你的结果集,并用这种方式填充电子表格:

$objPHPExcel = new PHPExcel(); 
$objPHPExcel->setActiveSheetIndex(0); 
$rowCount = 1; 
while($row = mysql_fetch_array($result)){ 
    $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowCount, $row['name']); 
    $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowCount, $row['age']); 
    $rowCount++; 
} 
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); 
$objWriter->save('some_excel_file.xlsx'); 

编辑:我更新了示例以提供完整的解决方案。

+1

这不会写任何数据到我的excel文件,也许你错过了什么? – Andre 2012-07-06 10:52:03

+0

@Andre,我已经更新了我的答案以提供完整的解决方案。我假设你已经读过这个例子,并且已经创建了excel对象并调用了$ objWriter-> save()方法。它现在对你有用吗? – davidethell 2012-07-06 10:58:33

+1

@Andre - 什么不工作?你得到什么错误? – 2012-07-06 15:11:55