• 24-12-2015, 16:55:42
    #1
    Merhabalar,

    Aşağıdaki örnekte PHPExcel kullanılarak statik veri yazdırılmış. Bunu Mysql database tablomuzda olduğunu düşünürsek bu verileri nasıl yazdırabiliriz, yardım rica ederim.

    //Classımızı çalışmamıza çağırıyoruz..
    require_once dirname(__FILE__) . '/Classes/PHPExcel.php';
    // Excel Değişkeni ile Classımızı başlatıyoruz.
    $Excel = new PHPExcel();
    // Oluşturacağımız Excel Dosyasının ayarlarını yapıyoruz.
    // Bu bilgiler O kadar önenli değil kafanıza göre doldurabilirsiniz.
    $Excel->getProperties()->setCreator("Ferhat YEŞİLMEN")
    ->setLastModifiedBy("F.Y Web Günlüğü")
    
    ->setTitle("Excel Test Dosyası")
    
    ->setSubject("Excel Test Dosyası")
    
    ->setDescription("Excel Dosyasının açıklaması")
    
    ->setKeywords("php excel office")
    
    ->setCategory("Kategori");
    
     
    //Excel Dosyasının Sayfasını Adını Belirliyoruz.Ben vArsayılan olarak gelen Sayfa1 ' i tercih ettim.
    
    $Excel->getActiveSheet()->setTitle('Sayfa1');
    
    //Belirtilen Alanlara Veri Girişi Yapıyoruz.
    
    $Excel->getActiveSheet()->setCellValue('A1', 'ADI');
    
    $Excel->getActiveSheet()->setCellValue('B1', 'SOYADI');
    
    $Excel->getActiveSheet()->setCellValue('C1', 'Doğum Yeri');
    
    $Excel->getActiveSheet()->setCellValue('D1', 'Web Sitesi');
    
    
    $Excel->getActiveSheet()->setCellValue('A2', 'FERHAT');
    
    $Excel->getActiveSheet()->setCellValue('B2', 'YEŞİLMEN');
    
    $Excel->getActiveSheet()->setCellValue('C2', 'Mardin');
    
    $Excel->getActiveSheet()->setCellValue('D2', 'http://www.ferhatyesilmen.com');
    
    //Kaydet
    
    $Kaydet = PHPExcel_IOFactory::createWriter($Excel, 'Excel2007');
    
    $Kaydet->save("Cikti_1.xlsx");
    
    echo "Dosya Oluşturuldu";
  • 24-12-2015, 16:59:33
    #2
    $Excel->getActiveSheet()->setCellValue('A2', 'FERHAT');
    
    $Excel->getActiveSheet()->setCellValue('B2', 'YEŞİLMEN');
    
    $Excel->getActiveSheet()->setCellValue('C2', 'Mardin');
    
    $Excel->getActiveSheet()->setCellValue('D2', 'http://www.ferhatyesilmen.com')
    bölümünü döngü içerisinde kullanıp, veritabanından gelen verileri yazdıracaksınız.
  • 24-12-2015, 17:42:48
    #3
    Aşağıdaki hatayı çözemedim, data.xls yi indiriyor fakat bilinmeyen dosya türü diyor. Problem ne olabilir?
    <?php
    $download="";
    $query=("SELECT * from excel");
    $resultdl= mysql_query($query) or die(mysql_error());
    $objPHPExcel = new PHPExcel();
    $objPHPExcel->setActiveSheetIndex(0);
    // Create a first sheet, representing sales data
    $objPHPExcel->setActiveSheetIndex(0);
    $objPHPExcel->getActiveSheet()->setCellValue('A1', 'ID');
    $objPHPExcel->getActiveSheet()->setCellValue('B1', 'Adı');
    $objPHPExcel->getActiveSheet()->setCellValue('C1', 'Soyadı');
    $objPHPExcel->getActiveSheet()->setCellValue('D1', 'Telefon');
    $objPHPExcel->getActiveSheet()->setCellValue('E1', 'Mail');
    $objPHPExcel->getActiveSheet()->setCellValue('F1', 'Adres');
    $objPHPExcel->getActiveSheet()->setCellValue('G1', 'Sehir');
    
    $rowcount=2;
    while($row = mysql_fetch_array($resultdl)){
         $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowcount, $row['id']);
         $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowcount, $row['adi']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowcount, $row['soyadi']);
         $objPHPExcel->getActiveSheet()->SetCellValue('D'.$rowcount, $row['telefon']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('E'.$rowcount, $row['mail']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('F'.$rowcount, $row['adres']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('G'.$rowcount, $row['sehir']); 	 	 
    $rowcount++; 
    } 
    /*
    $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); 
    header('Content-type: application/vnd.ms-excel');
    header('Content-Disposition: attachment; filename="excel.xls"');
    $objWriter->save('php://output'); die;*/
    
    header('Content-Type: application/vnd.ms-excel');
    header('Content-Disposition: attachment;filename="data.xls"');
    header('Cache-Control: max-age=0');
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    $objWriter->save('php://output');
    ?>
  • 24-12-2015, 17:46:14
    #4
    istizan adlı üyeden alıntı: mesajı görüntüle
    Aşağıdaki hatayı çözemedim, data.xls yi indiriyor fakat bilinmeyen dosya türü diyor. Problem ne olabilir?
    <?php
    $download="";
    $query=("SELECT * from excel");
    $resultdl= mysql_query($query) or die(mysql_error());
    $objPHPExcel = new PHPExcel();
    $objPHPExcel->setActiveSheetIndex(0);
    // Create a first sheet, representing sales data
    $objPHPExcel->setActiveSheetIndex(0);
    $objPHPExcel->getActiveSheet()->setCellValue('A1', 'ID');
    $objPHPExcel->getActiveSheet()->setCellValue('B1', 'Adı');
    $objPHPExcel->getActiveSheet()->setCellValue('C1', 'Soyadı');
    $objPHPExcel->getActiveSheet()->setCellValue('D1', 'Telefon');
    $objPHPExcel->getActiveSheet()->setCellValue('E1', 'Mail');
    $objPHPExcel->getActiveSheet()->setCellValue('F1', 'Adres');
    $objPHPExcel->getActiveSheet()->setCellValue('G1', 'Sehir');
    
    $rowcount=2;
    while($row = mysql_fetch_array($resultdl)){
         $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowcount, $row['id']);
         $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowcount, $row['adi']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowcount, $row['soyadi']);
         $objPHPExcel->getActiveSheet()->SetCellValue('D'.$rowcount, $row['telefon']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('E'.$rowcount, $row['mail']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('F'.$rowcount, $row['adres']); 
         $objPHPExcel->getActiveSheet()->SetCellValue('G'.$rowcount, $row['sehir']); 	 	 
    $rowcount++; 
    } 
    /*
    $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); 
    header('Content-type: application/vnd.ms-excel');
    header('Content-Disposition: attachment; filename="excel.xls"');
    $objWriter->save('php://output'); die;*/
    
    header('Content-Type: application/vnd.ms-excel');
    header('Content-Disposition: attachment;filename="data.xls"');
    header('Cache-Control: max-age=0');
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    $objWriter->save('php://output');
    ?>
    xlsx olarak denedinizmi?
  • 24-12-2015, 17:54:55
    #5
    tabii her iki türlü de denedim. çalışmıyor.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 17:54:55 -->-> Daha önceki mesaj 17:53:27 --

    İnternette aşağıda bulduğum şekilde çalıştı fakat .xlsx olarak kaydedemiyorum. Bu konuda bilgi rica ediyorum.


    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    ob_end_clean();
    header('Content-Type: application/vnd.ms-excel; charset=UTF-8');
    header('Content-Disposition: attachment;filename="data.xls"');
    header('Cache-Control: max-age=0');
    $objWriter->save('php://output');
    exit;