Foros del Web » Programando para Internet » PHP »

PHP OO Mandar pdf con libreria tcpdf por email

Estas en el tema de Mandar pdf con libreria tcpdf por email en el foro de PHP en Foros del Web. Hola, he creado un programita sencillo que me genera un informe en pdf. Para crear el archivo pdf he utilizado las librerías TCPDF. El caso ...
  #1 (permalink)  
Antiguo 27/08/2014, 10:24
Avatar de ruizinho  
Fecha de Ingreso: noviembre-2012
Ubicación: Granada
Mensajes: 68
Antigüedad: 12 años
Puntos: 2
Mandar pdf con libreria tcpdf por email

Hola, he creado un programita sencillo que me genera un informe en pdf. Para crear el archivo pdf he utilizado las librerías TCPDF.
El caso es que me gustaría que aparte de mostrarle el pdf al usuario, me lo mandara a mi también por mail.

La verdad es que no sé si es posible hacer eso con estas librerías.

En esta dirección tengo el ejemplo para que lo veáis.

Bueno un saludo!!
__________________
Instalaciones Técnicas Ruiz
  #2 (permalink)  
Antiguo 27/08/2014, 10:29
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 6 meses
Puntos: 528
Respuesta: Mandar pdf con libreria tcpdf por email

Podrías usar la función mail de php, o bien usar una librería para hacer más simple el manejo sobre todo de los archivos adjuntos, como phpmailer
  #3 (permalink)  
Antiguo 27/08/2014, 11:22
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 10 meses
Puntos: 61
Respuesta: Mandar pdf con libreria tcpdf por email

como te comentan phpmailer tiene la funcion

Código PHP:
Ver original
  1. $mail->addAttachment("adjunto/$archivo");
  #4 (permalink)  
Antiguo 27/08/2014, 11:35
Avatar de ruizinho  
Fecha de Ingreso: noviembre-2012
Ubicación: Granada
Mensajes: 68
Antigüedad: 12 años
Puntos: 2
Respuesta: Mandar pdf con libreria tcpdf por email

Gracias por responder, a los dos. La verdad es que preferiría no utilizar más librerías externas y enviarlo con la función mail().

Lo que pasa es que no sé si voy a poder mandar el archivo por mail porque cuando me lo genera, el archivo de llama pdf.php y hasta que no lo guardas en tu ordenador no se llama informe.pdf, asique...nosé estoy muy perdido...

Espero que alguien me pueda ayudar.
__________________
Instalaciones Técnicas Ruiz
  #5 (permalink)  
Antiguo 27/08/2014, 11:43
 
Fecha de Ingreso: agosto-2013
Ubicación: Talca
Mensajes: 40
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Mandar pdf con libreria tcpdf por email

Tengo la misma duda, se supone que el archivo debe crearse primero, como se haría para generarlo y enviarlo a la vez? Salu2
  #6 (permalink)  
Antiguo 27/08/2014, 11:44
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 6 meses
Puntos: 528
Respuesta: Mandar pdf con libreria tcpdf por email

Con tcpdf puedes guardar el archivo con el nombre que quieras, en la carpeta que quieras, para posteriormente enviarlo por el método que requieras, dea con mail() o con phpmailer. ¿Qué tipo de ayuda esperas recibir?
  #7 (permalink)  
Antiguo 27/08/2014, 11:57
 
Fecha de Ingreso: agosto-2013
Ubicación: Talca
Mensajes: 40
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Mandar pdf con libreria tcpdf por email

Lo que pasa es que el archivo para enviarlo primero debe guardarse en alguna parte, como hago para obtener ese archivo guardado en el servidor y luego enviarlo? o como hago para generarlo y enviarlo a la vez? creo que yo y matt_1985 tenemos la misma duda.
  #8 (permalink)  
Antiguo 27/08/2014, 11:59
Avatar de ruizinho  
Fecha de Ingreso: noviembre-2012
Ubicación: Granada
Mensajes: 68
Antigüedad: 12 años
Puntos: 2
Respuesta: Mandar pdf con libreria tcpdf por email

Pues por ejemplo lo que me acabas de dar... jejeje.

Ya he descubierto como guardarlo en el servidor!

Código PHP:
$pdf->Output('informe001.pdf''F');
$pdf->Output('informe001.pdf''I'); 
-El primero lo guarda en el directorio en el que estes dentro de tu servidor.
-El segundo te lo muestra en el navegador.

Ahora lo que me falta es como adjuntarlo a la función mail
__________________
Instalaciones Técnicas Ruiz
  #9 (permalink)  
Antiguo 27/08/2014, 13:37
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 10 meses
Puntos: 61
Respuesta: Mandar pdf con libreria tcpdf por email

Creo como te comente hacerlo con phpmailer es mas facil .


Código PHP:
Ver original
  1. <?php
  2. include_once 'clases/Conexion.php';
  3. include_once 'libs/PHPMailerAutoload.php';
  4.  
  5.  
  6.  
  7. $body = file_get_contents('plantilla.html');
  8. $reply = "[email protected]";
  9. $subject = "Titulo correo";
  10.  
  11. $mail = new PHPMailer();
  12. $mail->isSMTP();
  13. $mail->Host = 'smtp.host.net';
  14. $mail->SMTPAuth = true;
  15. $mail->SMTPKeepAlive = true;
  16. $mail->Port = 25;
  17. $mail->Username = 'tuusuario';
  18. $mail->Password = 'clave';
  19.  
  20. $mail->msgHTML($body);
  21. $mail->setFrom($from);
  22. $mail->addReplyTo($reply);
  23. $mail->Subject = $subject;
  24.  
  25. //agregar adjunto
  26. $directorio=opendir("adjunto/");
  27. while ($archivo = readdir($directorio)){
  28.     if($archivo != ".." && $archivo != "."){
  29.         $mail->addAttachment("adjunto/$archivo");
  30.     }
  31. }
  32. closedir($directorio);
  33.  
  34. $listaContactos = Contacto::getListaContactosPorTabla("tabla de correo", "nombre", "apellido", "mail");
  35. foreach ($listaContactos as $c) {
  36.     $mail->addAddress($c->mail, $c->nombre ." ".$c->apellido);
  37.     echo "Enviado $c->nombre $c->apellido --> $c->mail <br />";
  38.  
  39.     // if que realiza envio
  40.    
  41.     if (!$mail->send()) {
  42.         echo "Error $c->mail".$mail->ErrorInfo.'<br />';
  43.     } else {
  44.          echo "Enviado $c->mail <br />";
  45.     }
  46.      $mail->clearAddresses();
  47. }
  48. ?>


Saludos.
  #10 (permalink)  
Antiguo 28/08/2014, 04:57
Avatar de ruizinho  
Fecha de Ingreso: noviembre-2012
Ubicación: Granada
Mensajes: 68
Antigüedad: 12 años
Puntos: 2
Respuesta: Mandar pdf con libreria tcpdf por email

Gracias, voy a ver si lo hago como tu dices, porque con la función mail() no hay manera.

Un saludo
__________________
Instalaciones Técnicas Ruiz

Etiquetas: email, pdf, tcpdf
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 08:31.