Quel est le moyen le plus simple d'attacher un fichier PDF à un courrier électronique via DOMPDF?
La fin de mon script que j'utilise (une partie de celle-ci) est ci-dessous: p> Appréciez le moyen le plus simple / plus rapide en utilisant la fonction de messagerie PHP standard. P> acclamations; -) P> >
3 Réponses :
La fonction mail de PHP n'a pas de méthode de fixation de fichier « standard ». Il est un barebone extrêmement interface avec le système SMTP qui vous oblige à faire tout le travail d'attacher un fichier vous-même. P>
Je suggère fortement d'utiliser PHPMailer ou Swiftmailer pour faire l'e-mail pour vous - il réduit le travail de grunt lourd de générer votre propre e-mail MIME et insérer la pièce jointe (beaucoup de lignes de code) ne peut-être à 5 lignes au total p>.
Notez que aucun d'entre eux se chargera un cams PDF à partir dompdf. Vous devez enregistrer le PDF dans un fichier temporaire et attachez que, p>
Merci pour la réponse ... Alors, comment puis-je faire ça?
OK. Vous avez déjà accepté une réponse, mais pour quelqu'un d'autre qui vient ici, je pense qu'il est plus facile, mais il n'est donc pas non plus la fonction de courrier standard de PHP, ce qui ne va vraiment pas fonctionner. Si vous pouvez obtenir les packages de paires Mail and Mail_Mime, il est vraiment facile d'envoyer des courriels avec des pièces jointes. Vous pouvez également joindre directement la sortie DOMPDF sans créer de fichier, comme:
$dompdf = new DOMPDF(); $dompdf->load_html($html); $dompdf->set_paper("letter", "portrait" ); $dompdf->render(); $output = $dompdf->output(); $mm = new Mail_mime("\n"); $mm->setTxtBody($body); $mm->addAttachment($output,'application/pdf','output.pdf', false); $body = $mm->get(); $headers = $mm->headers(array('From'=>$from,'Subject'=>$subject)); $mail =& Mail::factory('mail'); if($mail->send($to,$headers,$body)){ echo "Your message has been sent."; }
Voici la solution que je cherchais quand je suis venu ici:
au lieu de: p> fais cela: p> et que d'envoyer des messages avec PHPMailer et attachez le PDF à la mail de même: P> $filename = 'MyDocument.pdf';
$encoding = 'base64';
$type = 'application/pdf';
$mail->AddStringAttachment($fileatt,$filename,$encoding,$type);
Avez-vous examiné avec Objet de messagerie intégré de Joomla ?