Ciao.
Ho provato questo codice:
Codice PHP:
<?php
//**dichiaro gli header della pagina specificando che si tratta del download di un documento office*
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
header("Content-Disposition: attachment;filename=prova.xlsx");
header("Content-Transfer-Encoding: binary ");
/** Imposto la visualizzazione degli errori per il debug */
error_reporting(E_ALL);
/** Specifico quali file includere **/
set_include_path('/Classes/');
/** PHPExcel */
include 'PHPExcel.php';
/** PHPExcel_IOFactory */
include 'PHPExcel/IOFactory.php';
// Creo il nuovo oggetto PHPExcel
$objPHPExcel = new PHPExcel();
// ed imposto le proprietà del documento
$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");
$objPHPExcel->getProperties()->setLastModifiedBy("Massimiliano PASQUALONI");
$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");
$objPHPExcel->getProperties()->setCategory("Test result file");
//** Aggiungo qualche dato alle celle **
// per prima cosa mi posiziono sul primo foglio di lavoro
$objPHPExcel->setActiveSheetIndex(0);
// poi scrivo nella prima cella, la A1 la parola “Hello”
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello');
// e continuo con le altre
$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!');
$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello');
$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!');
//** Aggiungo un'immagine **
// creo il nuovo oggetto immagine
//$objDrawing = new PHPExcel_Worksheet_Drawing();
// ne imposto le proprietà come nome, descrizione ed altro...
//$objDrawing->setName('PHPExcel logo');
//$objDrawing->setDescription('PHPExcel logo');
// specifico qual'è il file sorgente
//$objDrawing->setPath('../images/phpexcel_logo.gif');
// quant'è alta in pixel
//$objDrawing->setHeight(36);
//in quale cella inserirla
//$objDrawing->setCoordinates('D4');
//$objDrawing->setOffsetX(-10);
//e posiziono l'immagine nel foglio di calcolo attivo
//$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
// rinomino il foglio di calcolo
$objPHPExcel->getActiveSheet()->setTitle('Simple');
//instanzio l'oggetto writer che prende l'informazioni dall'oggetto PHPExcel e genera il file di tipo Excel2007
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
//e lo salvo nel browser iniziando lo streaming per il donwload dei dati
$objWriter->save("php://output");
?>
Ma non mi va, secondo voi c'è qualche errore di utilizzo e/o sintassi ???
Ciao.
Grejo