Foros del Web » Programando para Internet » PHP »

Error al pasar lista a pdf

Estas en el tema de Error al pasar lista a pdf en el foro de PHP en Foros del Web. Hola amigos trato de hacer un reporte de pdf creé mi html con dompdf el cual jala una lista(1500 filas aprox) de la bd mysql. ...
  #1 (permalink)  
Antiguo 20/08/2011, 19:23
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Error al pasar lista a pdf

Hola amigos trato de hacer un reporte de pdf

creé mi html con dompdf el cual jala una lista(1500 filas aprox) de la bd mysql. para convertir esta tabla en pdf.

pero me muestra un error
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 15 bytes) in C:\xxxx\xxx\misistema\PDF\include\style.cls.php on line 695

es creo debido a que jala muchas lineas? pero los reportes normalmente son grandes ... no se como solucionar este error
  #2 (permalink)  
Antiguo 20/08/2011, 20:25
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 7 meses
Puntos: 80
Respuesta: Error al pasar lista a pdf

debes asignar mas memoria a tu script.
Si tienes acceso al servidor, lo puedes hacer del php.ini en la variable memory_limit y si no aunque a veces no esta permitido el comando ini_set('memory_limit', '512M');

Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #3 (permalink)  
Antiguo 20/08/2011, 20:53
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Error al pasar lista a pdf

asigne mayor memoria pero ningun resultado bueno :S sale q espero mas de 30 segundos y no salio nada .

busco solucion pero nada
  #4 (permalink)  
Antiguo 20/08/2011, 21:05
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 7 meses
Puntos: 80
Respuesta: Error al pasar lista a pdf

Ahora tienes el problema del tiempo máximo de ejecución del script, por defecto son 30 segundos y quizas no te este dando si son tantas lineas.

Ahora configura la variable max_execution_time, lo puedes hacer tambien con
ini_set('max_execution_time', tiempo en segundos);

Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #5 (permalink)  
Antiguo 20/08/2011, 21:33
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Error al pasar lista a pdf

Lo raro es que hace un tiempo hice una aplicacion y reporta mas de 2000 lineas y mucho mas rapido y no sale ese error...esta muy raro esto
  #6 (permalink)  
Antiguo 20/08/2011, 21:39
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 7 meses
Puntos: 80
Respuesta: Error al pasar lista a pdf

activa los errores para ver que sucede...
Pero generalmente con ese tipo de listados son los errores mas comunes que agote la memoria y el tiempo.

Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #7 (permalink)  
Antiguo 20/08/2011, 21:47
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Error al pasar lista a pdf

Código HTML:
Ver original
  1. <?php
  2. include('../../controllers/conexion.php');
  3. require_once("../dompdf_config.inc.php");
  4. include('../../models/Productos.php');
  5. session_start();
  6. ob_start();
  7. ?>
  8.  
  9. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  10. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  11.     <link rel="STYLESHEET" href="css/print_static.css" type="text/css" />
  12. </head>
  13.  
  14.  
  15. <div id="body">
  16.  
  17. <div id="section_header">
  18. </div>
  19.  
  20. <div id="content">
  21.  
  22. <div class="page" style="font-size: 7pt">
  23. <table class="change_order_items titulo_tabla">
  24.  <tr><th>REPORTE DE PRODUCTOS</th></tr>
  25.  
  26.  
  27. <table class="change_order_items">
  28.     <tbody>
  29.         <tr>
  30.             <th width="3%">#</th>
  31.             <th width="90%">Producto</th>
  32.             <th width="7%">Unidad de Medida</th>
  33.             <th width="3%" class="nowrap">ID</th>
  34.         </tr>
  35.         <?php
  36.            $productos = new Productos();
  37.            foreach ($productos->ListarTodosProductos() as $one){
  38.         ?>
  39.         <tr class="row<?php echo $color_fila; ?>">
  40.             <td class="center"><?php echo $i;  ?></td>
  41.             <td class="left"><?php echo $one -> PROD_NOMB;  ?></td>
  42.             <td class="left"><?php echo $one -> UMED_NOMB;  ?></td>
  43.             <td class="center"><?php echo $one -> PROD_CODI;  ?></td>
  44.         </tr>
  45.      <?php
  46.                }
  47.        ?>
  48.  
  49.    </tbody>
  50.    </table>
  51.  
  52. </div>
  53.  
  54. </div>
  55. </div>
  56. </body>
  57. </html>
  58.  
  59. <?php
  60. $html = ob_get_contents();
  61. ob_end_clean();
  62.  
  63. $dompdf = new DOMPDF();
  64.  
  65. $dompdf->load_html($html);
  66. $dompdf->render();
  67. $dompdf->stream("prueba.pdf");
  68. ?>


ese es mi codigo

y ya cambie el tiempo y todo; pero me sale que el archivo pdf esta dañado. no se a que se debe
  #8 (permalink)  
Antiguo 21/08/2011, 10:46
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 7 meses
Puntos: 80
Respuesta: Error al pasar lista a pdf

Pero te llega a generar un pdf...
Si es asi envíamelo a mi correo para verlo, pues el error debe estar dentro del pdf...


Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp

Etiquetas: html, lista, mysql, pasar, pdf, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:01.