Bonjour à tous
,
Je voudrais joindre un PDF crée suite à un formulaire avec HTML2PDF puis l'envoyer avec PHMailer.
Tout fonctionne, le mail part bien, j'ai réussi à créer le PDF en l'enregistrant sur mon disque dur.
Mais lorsque j'essaye de le joindre à mon mail, le pdf est bien en pj mais je ne peut pas l'ouvrir
.
Il fait bien la même taille de mes pdf crées localement..
J'ai bien suivi les tuto et wiki des deux librairies, enfin je pense ^^
Voici mon code PHPMailer :
et voici le code de HTML2PDF :
J'ai essayé de rajouter ", 'base64', 'application/pdf'" dans le addStringAttachment mais ca ne change rien.
Avez vous une idée de mon erreur?
Merci à tous
Merci à tous

Je voudrais joindre un PDF crée suite à un formulaire avec HTML2PDF puis l'envoyer avec PHMailer.
Tout fonctionne, le mail part bien, j'ai réussi à créer le PDF en l'enregistrant sur mon disque dur.
Mais lorsque j'essaye de le joindre à mon mail, le pdf est bien en pj mais je ne peut pas l'ouvrir


Il fait bien la même taille de mes pdf crées localement..
J'ai bien suivi les tuto et wiki des deux librairies, enfin je pense ^^
Voici mon code PHPMailer :
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require './vendor/phpmailer/phpmailer/src/Exception.php';
require './vendor/phpmailer/phpmailer/src/PHPMailer.php';
require './vendor/phpmailer/phpmailer/src/SMTP.php';
require './vendor/autoload.php';
// Instantiation and passing `true` enables exceptions
$mail = new PHPMailer(true);
$mail->CharSet = 'UTF-8';
try {
//Server settings
$mail->SMTPDebug = 0; // Enable verbose debug output
$mail->isSMTP(); // Send using SMTP
$mail->Host = '******'; // Set the SMTP server to send through
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = '*****'; // SMTP username
$mail->Password = '*****'; // SMTP password
//$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged
$mail->Port = ****; // TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above
//Recipients
$mail->setFrom('****@****.com', '****');
$mail->addAddress($to); // Add a recipient
//$mail->addAddress('ellen@example.com'); // Name is optional
$mail->addReplyTo($shop_email, 'Votre magasin');
//$mail->addCC('cc@example.com');
$mail->addBCC($shop_email);
// Attachments
$mail->addStringAttachment($pdf_done, 'myPdf.pdf'); // Add attachments
//$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name
// Content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $subject;
$mail->Body = $message;
$mail->AltBody = strip_tags($message);
$mail->send();
echo '';
} catch (Exception $e) {
echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";
}
?>
et voici le code de HTML2PDF :
ob_start();
// --> mon code HTML de creeation du PDF
$content = ob_get_clean();
require_once dirname(__FILE__).'/../vendor/autoload.php';
use Spipu\Html2Pdf\Html2Pdf;
use Spipu\Html2Pdf\Exception\Html2PdfException;
use Spipu\Html2Pdf\Exception\ExceptionFormatter;
try{
$pdf = new \Spipu\Html2Pdf\Html2Pdf('P', 'A4', 'fr');
$pdf->writeHTML($content);
$pdf_done = $pdf->output('myPdf.pdf', 'S');
}catch(\Spipu\Html2Pdf\Exception\Html2PdfException $e){
die($e);
}
?>
J'ai essayé de rajouter ", 'base64', 'application/pdf'" dans le addStringAttachment mais ca ne change rien.
Avez vous une idée de mon erreur?
Merci à tous
Merci à tous
