Solución:
Elimine la siguiente inclusión:
require_once 'PHPExcel_1.7.9_doc/Classes/PHPExcel/IOFactory.php';
Declaraste el objeto dos veces. Retire uno de ellos:
// create new PHPExcel object
$objPHPExcel = new PHPExcel();
Inserte los siguientes encabezados justo antes de crear el editor:
header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
header("Content-Disposition: attachment; filename="results.xlsx"");
header("Cache-Control: max-age=0");
En lugar de lo siguiente (que en realidad guarda el archivo en el servidor):
$objWriter->save('results.xlsx');
Inserte lo siguiente (que creará el archivo descargable):
$objWriter->save("php://output");
Esto debería resolver el galimatías del texto. Si aún recibe ese texto, inserte el siguiente código antes de la última línea ($objWriter->save("php://output");
):
ob_clean();
Esto funcionó para mí. Espero eso ayude.
Esto debería funcionar, intente modificar su código de esta manera:
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=my_excel_filename.xls");
header("Pragma: no-cache");
header("Expires: 0");
flush();
require_once 'PHPExcel.php';
$objPHPExcel = new PHPExcel();
// here fill data to your Excel sheet
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)