Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como creo el pdf si me da error de header

Estas en el tema de Como creo el pdf si me da error de header en el foro de PHP en Foros del Web. Hola amigos vereis, Tengo el siguiente problema, tengo un formulario en el que envio las variables a otro archivo que es el encargado de guardar ...
  #1 (permalink)  
Antiguo 27/05/2013, 15:25
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Como creo el pdf si me da error de header

Hola amigos vereis,

Tengo el siguiente problema, tengo un formulario en el que envio las variables a otro archivo que es el encargado de guardar en la base de datos, la cosa es que ademas necesito que a la vez que guarda cree un pdf y lo envie por email, el problema esta en que si pongo el codigo del pdf en el mismo archivo que guarda los datos me da error de header.

Como puedo hacer para que haga las dos cosas sin que me de error, ahora mismo lo estoy haciendo enviando las variables que necesita el pdf mediante un <iframe> pero no veo muy adecuado hacer esto, tambien se podria hacer con una redireccion automatica pero tampoco lo veo correcto.

A ver si alguien se le ocurre algo.

Un saludo y mil gracias
  #2 (permalink)  
Antiguo 27/05/2013, 15:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como creo el pdf si me da error de header

Deberías crear el PDF y guardarlo en un archivo, si también usas dicho script para crear el PDF y verlo directamente entonces deberías tener dos posibles salidas: guardas siempre el PDF como archivo y/o dependiendo del uso final lo envías al navegador o lo adjuntas en tu correo, etc.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 27/05/2013, 15:54
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Como creo el pdf si me da error de header

Hola pateketrueke, gracias por tu atencion,

Me ha servido de mucho tu aclaracion, estoy usando este ejemplo para enviarlo por email:

http://prgm.spipu.net/php_pj_mail

La cosa es que me da error:

Warning: require_once(/home/esfera10/public_html/localizacion/dlc/pjmail\_simplemail\class.mail.php) [function.require-once]: failed to open stream: No such file or directory in /home/esfera10/public_html/localizacion/dlc/pjmail/pjmail.class.php on line 16


El codigo que uso es este:

Código PHP:
Ver original
  1. require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php');
  2.  
  3.  require_once(dirname(__FILE__).'/pjmail/_simplemail/class.mail.php');
  4.  
  5. $mail = new simplemail;
  6. $mail -> addrecipient('[email protected]','tetsuo');
  7. $mail -> addrecipient('[email protected]','plouf');
  8. $mail -> addbcc('[email protected]','plouf');
  9. $mail -> addfrom('[email protected]','gwbush');
  10. $mail -> addsubject('yyy yyy');
  11.  
  12. // le message text
  13. $mail -> text = 'plain text etc. etc. bla bla ...';
  14.  
  15. // le message format html
  16. $mail -> html ="bla<hr><img src=\"cid:doc1\" align=\"right\">blbala\n1\t2\t3\na\tb\tc";
  17.  
  18. // un attachement html ( image jointe afficher ds le html ).
  19. $mail -> addhtmlattachement ( 'KT400.gif','doc1', 'image/gif' );
  20.  
  21. // une piece jointe.
  22. $mail -> addattachement ( 'KT400.gif' );
  23.  
  24. if ( $mail -> sendmail() ) { echo "envoyé"; } else { echo "erreur"; echo $mail->error_log; } ?>
  25. ?>
  #4 (permalink)  
Antiguo 27/05/2013, 15:59
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como creo el pdf si me da error de header

Ese error se soluciona fácil: revisa bien la ruta que utilizas, está mal, y no digas que está bien porque si así fuera entonces no recibirías el error.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 27/05/2013, 16:09
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Como creo el pdf si me da error de header

Umm, joer no me di cuenta.

Ya esta solucionado el tema de la ruta, ahora mismo me esta enviando el email con el pdf, pero parece que lo envia dañado por que dice que no es posible abrirlo.

El codigo que he modificado queda asi amigo:

Código PHP:
Ver original
  1. require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php');
  2.  
  3. // require_once(dirname(__FILE__).'pjmail/pjmail.class.php');
  4.    
  5.  
  6.  
  7.  //$content_PDF = $html2pdf->Output('', true);  
  8.  require_once(dirname(__FILE__).'/pjmail/pjmail.class.php');
  9.  $mail = new PJmail();
  10.     $mail->setAllFrom('[email protected]', 'Prenom Nom');  // mail en cas d'erreur d'envoie
  11.     $mail->addrecipient('[email protected]');
  12.  $mail->addsubject("Ejemplo de envío de PDF");
  13.  $mail->text = "Este es el cuerpo del mensaje";
  14.  $mail->addbinattachement("my_document.pdf", $content_PDF);
  15.  $res = $mail->sendmail();
  #6 (permalink)  
Antiguo 27/05/2013, 16:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como creo el pdf si me da error de header

Tienes comentada la linea donde generas $content_PDF y después la usas, ¿está bien eso?

De ahí en fuera no tengo ni idea de cómo se usa el método addbinattachement() así que te toca leer y ver cómo usarlo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 27/05/2013, 16:23
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Como creo el pdf si me da error de header

Amigo, muchisimas gracias por tu ayuda de verdad.

He conseguido hacer que funcione.

Un saludo amigo y gracias de nuevo

Etiquetas: formulario, header, pdf, variables
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 05:38.