Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/02/2013, 16:14
franjgg
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
PHPExcel da el siguiente error

Hola amigos como estais,

Vereis estoy usando PHPExcel por recomendacion de algunos compañeros del foro, la cosa es que me da el siguiente error al crearlo el excel, decir que he probado con un ejemplo por defecto y funciona asique descartamos cosas de configuracion y demas.

Errores:

Warning: Cannot modify header information - headers already sent by (output started at /home/esfera10/public_html/cofranet/cerrar_session.php:8) in /home/esfera10/public_html/cofranet/creando_excel.php on line 108

Warning: Cannot modify header information - headers already sent by (output started at /home/esfera10/public_html/cofranet/cerrar_session.php:8) in /home/esfera10/public_html/cofranet/creando_excel.php on line 109

Warning: Cannot modify header information - headers already sent by (output started at /home/esfera10/public_html/cofranet/cerrar_session.php:8) in /home/esfera10/public_html/cofranet/creando_excel.php on line 110


El archivo completo es este:

Código PHP:
Ver original
  1. <?php
  2. include_once('cerrar_session.php');
  3. include_once('conexion.php');
  4. require_once '../excel/Classes/PHPExcel.php';
  5.  
  6. // Crea un nuevo objeto PHPExcel
  7. $objPHPExcel = new PHPExcel();
  8.  
  9. // Establecer propiedades
  10. $objPHPExcel->getProperties()
  11. ->setCreator("Cattivo")
  12. ->setLastModifiedBy("Cattivo")
  13. ->setTitle("Documento Excel de Prueba")
  14. ->setSubject("Documento Excel de Prueba")
  15. ->setDescription("Demostracion sobre como crear archivos de Excel desde PHP.")
  16. ->setKeywords("Excel Office 2007 openxml php")
  17. ->setCategory("Pruebas de Excel");
  18.  
  19.  
  20.     $consulta = 'SELECT u.Nusuario, u.Ncofradia, u.Avatar, u.Apellidos, u.Nombre, c.cargo, u.Telefono_fijo, u.Mostrar_Telefono_fijo FROM usuarios u inner join cofradias_cargos c ON u.Ncargo = c.Ncargo WHERE u.Ncofradia = '.$_SESSION["Ncofradia"];
  21.  
  22.                                                    
  23.  
  24.  
  25.             if($_POST['Nombre'] != ""){
  26.  
  27.                   $consulta .= " AND Nombre LIKE '%" .$_POST['Nombre']. "%'";
  28.  
  29.             }
  30.  
  31.            
  32.  
  33.             if($_POST['Apellidos'] != ""){
  34.  
  35.                   $consulta .= " AND Apellidos LIKE '%" .$_POST['Apellidos']. "%'";
  36.  
  37.             }
  38.  
  39.            
  40.  
  41.             if($_POST['DNI'] != ""){
  42.  
  43.                   $consulta .= " AND DNI LIKE '%" .$_POST['DNI']. "%'";
  44.  
  45.             }
  46.            
  47.             if($_POST['Cargo'] != ""){
  48.  
  49.                   $consulta .= " AND u.Ncargo = " .$_POST['Cargo'];
  50.  
  51.             }
  52.  
  53.            
  54.  
  55.             if($_POST['Grupo'] != ""){
  56.  
  57.                   $consulta .= " AND u.NUsuario IN ( SELECT NUsuario FROM grupo_usuario WHERE NGrupo = ".$_POST['Grupo']." )";
  58.  
  59.             }          
  60.  
  61.  
  62.  
  63.     $consulta .= ' ORDER by Apellidos, Nombre ';                 
  64.  
  65.     $resultado = mysql_query($consulta,$conexion);
  66.  
  67.     $i = 3;
  68.  
  69.     while ($array_excel = mysql_fetch_array($resultado)){
  70.  
  71.   // Agregar Informacion
  72.   $objPHPExcel->setActiveSheetIndex(0)
  73.   ->setCellValue('A'.$i, $array_excel['Nombre'])
  74.   ->setCellValue('B'.$i, $array_excel['Apellidos'])
  75.   ->setCellValue('C'.$i, $array_excel['fecha_nacimiento'])
  76.   ->setCellValue('D'.$i, $array_excel['DNI'])
  77.   ->setCellValue('E'.$i, $array_excel['fecha_ingreso'])
  78.   ->setCellValue('F'.$i, $array_excel['Direccion'])
  79.   ->setCellValue('G'.$i, $array_excel['Localidad'])
  80.   ->setCellValue('H'.$i, $array_excel['Codigo_Postal'])
  81.   ->setCellValue('I'.$i, $array_excel['Telefono_fijo'])
  82.   ->setCellValue('J'.$i, $array_excel['Telefono_movil'])
  83.   ->setCellValue('K'.$i, $array_excel['Email']);                   
  84.    
  85.     $i++;
  86. }
  87.  
  88. $objPHPExcel->setActiveSheetIndex()->setCellValue('A1', 'Nombre');
  89. $objPHPExcel->setActiveSheetIndex()->setCellValue('B1', 'Apellidos');
  90. $objPHPExcel->setActiveSheetIndex()->setCellValue('C1', 'Fecha de nacimiento');
  91. $objPHPExcel->setActiveSheetIndex()->setCellValue('D1', 'DNI');
  92. $objPHPExcel->setActiveSheetIndex()->setCellValue('E1', 'Fecha de ingreso');
  93. $objPHPExcel->setActiveSheetIndex()->setCellValue('F1', 'Direccion');
  94. $objPHPExcel->setActiveSheetIndex()->setCellValue('G1', 'Localidad');
  95. $objPHPExcel->setActiveSheetIndex()->setCellValue('H1', 'Codigo postal');
  96. $objPHPExcel->setActiveSheetIndex()->setCellValue('I1', 'Telefono fijo');
  97. $objPHPExcel->setActiveSheetIndex()->setCellValue('J1', 'Telefono movil');
  98. $objPHPExcel->setActiveSheetIndex()->setCellValue('K1', 'Email');
  99.  
  100. // Renombrar Hoja
  101. $objPHPExcel->getActiveSheet()->setTitle('Tecnologia Simple');
  102.  
  103. // Establecer la hoja activa, para que cuando se abra el documento se muestre primero.
  104. $objPHPExcel->setActiveSheetIndex(0);
  105.  
  106. // Se modifican los encabezados del HTTP para indicar que se envia un archivo de Excel.
  107. header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  108. header('Content-Disposition: attachment;filename="pruebaReal.xlsx"');
  109. header('Cache-Control: max-age=0');
  110. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
  111. $objWriter->save('php://output');
  112. ?>


A ver si alguien sabe un poco del tema y puede orientarme un poquito sobre lo que puede estar pasando.

Un saludo