Pièce jointe pdf dans mail
Salut à tous
comment envoyer automatiquement un mail avec un pièce jointe pdf en php.
Je vous explique,
j'ai un formulaire qui récupère le mail et le nom de la personne, et lorsqu'il clic sur "Envoyer"
cela l'inscrit et lui envoi un mail automatique dans lequel je voudrais attacher une pièce jointe style info.pdf.
j'ai fait ce code qui fonctionne si je joint du .doc ou du .jpg mais les .pdf ne passe pas.
code du mail auto
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
$email_webmaster = "lemail@gmail.com";
// Destinataires.
$destinataires = $_POST["email_client"];
// Objet.
$objet = "Bonjour 33 !";
// Entêtes supplémentaires.
$entêtes = "";
// -> origine du message
$entêtes .= "From: ".$email_webmaster." <".$email_webmaster.">\r\n";
// -> message au format Multipart MIME
$entêtes .= "MIME-Version: 1.0\r\n";
$entêtes .= "Content-Type: multipart/mixed; ";
$entêtes .= "boundary=\"=M=A=T=T=H=I=E=U=\"\r\n";
// Message.
$message = "";
// -> première partie du message (texte proprement dit)
// -> entête de la partie
$message .= "--=M=A=T=T=H=I=E=U=\r\n";
$message .= "Content-Type: text/plain; ";
$message .= "charset=UTF-8\r\n ";
$message .= "Content-Transfer-Encoding: 8bit\r\n";
$message .= "\r\n"; // ligne vide
// -> données de la partie
$message .= "Voir la pièce jointe.\r\n";
$message .= "\r\n"; // ligne vide
// -> deuxième partie du message (pièce-jointe)
// -> entête de la partie
$message .= "--=M=A=T=T=H=I=E=U=\r\n";
$message .= "Content-Type: application/octet-stream; ";
$message .= "name=\"info.pdf\"\r\n";
$message .= "Content-Transfer-Encoding: base64\r\n";
$message .= "Content-Disposition: attachment; ";
$message .= "filename=\"info.pdf\"\r\n";
$message .= "\r\n"; // ligne vide
// lecture du fichier en pièce jointe
$sFileAdd = file_get_contents("info.pdf");
// encodage et découpage des données
$sFileAdd = chunk_split(base64_encode($sFileAdd));
// pièce jointe de la partie (intégration dans le message)
$message .= "$sFileAdd\r\n";
$message .= "\r\n"; // ligne vide
// Délimiteur de fin du message.
$message .= "--=M=A=T=T=H=I=E=U=--\r\n";
// Envoi.
if(mail($destinataires,$objet,$message,$entêtes)){ .......... |
Merci d'avance de votre aide
Cdt