2012-07-06 66 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