Aller au contenu

Classes html2pdf + phpmailer


Sujets conseillés

Posté

Bonjour,

J'utilise la librairie PHPMailer pour envoyer les mails à partir de mon Site (http://stephaneey.developpez.com/tutoriel/php/phpmailer/) ainsi que HTML2PDF pour générer des PDF à partir de fichiers HTML.

Je voudrais pouvoir génrer une PDF et l'envoyer directement par e-mail (en fichier attaché) sans passer pas la case "afficher le PDF"...

J'utilise ceci :

				$pdf=new HTML2FPDF();
$pdf->AddPage();
$fp = fopen("test.html","r");
$strContent = fread($fp, filesize("test.html"));
fclose($fp);
$pdf->WriteHTML($strContent);
$MONPDF = $pdf->Output();

$mail = new PHPmailer();
$mail->IsHTML(true);
$mail->From='email_AT_domaine.fr';
$mail->AddAddress('monemail_AT_domaine.fr');
$mail->AddReplyTo('email_AT_domaine.fr');
$mail->Subject='sujet';
$mail->Body='message';
$mail->AddAttachment($MONPDF);
$mail->Send();
unset($mail);

Le problème est que mon PDF est affiché à l'écran, arrêtant ainsi mon script...

Quelqu'un peut m'aider siou plaît ?!

Merci par avance.

  • 2 years later...
Posté (modifié)

Bonjour,

J'ai le même soucis, pourtemps il semble que le code est bon.

A tu trouvé la solution ou quelqu'un d'autre ?

J'ai tester avec :

$content_PDF = $pdf->Output('','S');

Le fichier PDF ne s'affiche plus a l'ecran mais il n'est pas joint au mail :(

$mail->AddAttachment($content_PDF, 'test.pdf', 'base64', 'application/pdf');

Une idée ?

Modifié par cvneo
Posté

J'ai trouver, sa servira peut etre a quelqu'un :

Il faut donc généré le PDF :

require_once '/cmsClass/html2pdf/html2pdf.class.php';

$pdf = new HTML2PDF('P','A4', 'fr');

$pdf->WriteHTML($content, isset($_GET['vuehtml']));

$content_PDF = $pdf->Output('','S');

ensuite pour l'envoi via PHPmailer :

$mail->AddStringAttachment($content_PDF, 'test.pdf', 'base64', 'application/pdf');

Voila et sa marche :)

Finalement très simple.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...