2012-07-06 17 views
10

Benim excel dosyası benim veritabanından aldığım bazı verilerle doldurmak istiyorum, örneğin birisinin adı ve yaşı.Otomatik oluşturulan excel dosyaları yapmak için PHPExcel kullanma

Veritabanımda 10 kişi olduğunu varsayalım. Excel dosyasındaki 10 kişiyi istiyorum. Yani temelde

, sana ulaşabilir:

ADI YAŞ

PERSON1 20 yıl

Person2 25 yıl

Ve böyle devam eder. NAME ve AGE malzemelerini nasıl ayarlayacağımı biliyorum, ancak verileri nasıl çevirip excel dosyasına yazacağım? PHPExcel'in belgelerinde bir şey bulamadım.

Bu benim MySQL geçerli:

$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

kodunuzda düzenlenmiş cevabı :-) Lütfen kontrol edin. – Vimalnath

+0

Bu sizin için çalışıyor mu? – Vimalnath

+0

Bir örnek için http://phpexcel.codeplex.com/discussions/246121/ bir göz atın –

cevap

35

Ben zaten oluşturulmuş excel nesne var varsayıyorum. Örneklerine uymak için $ objPHPExcel diyorum. Bu durumda size sonuç döngü ayarlayabilir ve e-tabloyu bu şekilde doldurabilirsiniz:

$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'); 

EDIT: Ben tam bir çözüm sağlamak için örnek güncelledik.

+1

Bu benim excel dosyasına herhangi bir veri yazmaz, belki bir şey özledin mi? – Andre

+0

@Andre, Çözümümüzü eksiksiz bir çözüm sağlamak için güncelledim. Örneği okuduğunuzu ve zaten excel nesnesini oluşturduğunuzu ve $ objWriter-> save() yöntemini çağırdığınızı varsayıyordum. Şimdi sizin için çalışıyor mu? – davidethell

+1

@Andre - tam olarak ne işe yaramıyor? Ne tür hatalar alıyorsunuz? –

İlgili konular