Bonjour,
Si je mets le message html je reçois un mail avec en pièce jointe mon message version html et si j'envoie mon message version texte je récupère bien une pièce jointe mais encodé avec lettre et chiffre donc pas très parlant pour le personne qui reçois le mail.
Je vous remets tous mon code
Donc si quelqu'un voit un truc je suis preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
60
61
62
63
64
65
66 $uploaddir = './img/'; $uploadfile = $uploaddir . basename($_FILES['userfile']['name']); if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { echo "Le fichier est valide, et a été téléchargé avec succès. Voici plus d'informations :\n"; } else { echo "Attaque potentielle par téléchargement de fichiers. Voici plus d'informations :\n"; print_r($_FILES); } //----------------------------------------------- //DECLARE LES VARIABLES //----------------------------------------------- $destinataire='mail_destinataire'; $message_texte="Bonjour,\nVoici un message au format texte :\n\n Nom : ".$_POST['nom']." ".$_POST['prenom']."\nE-mail : ".$_POST['mail']."\nDemande : \n".$_POST['msg']; $email_reply=$email_expediteur=$_POST['mail']; $message_html="Bonjour,<br>Voici un message au format texte :<br><br> Nom : ".$_POST['nom']." ".$_POST['prenom']."<br>E-mail : ".$_POST['mail']."<br>Demande : <br>".$_POST['msg']; $email_reply=$email_expediteur=$_POST['mail']; $sujet="Formulaire contact site web"; //----------------------------------------------- //GENERE LA FRONTIERE DU MAIL ENTRE TEXTE ET HTML //----------------------------------------------- $frontiere = '-----=' . md5(uniqid(mt_rand())); //----------------------------------------------- //HEADERS DU MAIL //----------------------------------------------- $headers = 'From: "Nom" <'.$email_expediteur.'>'."\n"; $headers .= 'Return-Path: <'.$email_reply.'>'."\n"; $headers .= 'MIME-Version: 1.0'."\n"; $headers .= 'Content-Type: multipart/mixed; boundary="'.$frontiere.'"'; //----------------------------------------------- //MESSAGE TEXTE //----------------------------------------------- $message = 'This is a multi-part message in MIME format.'."\n\n"; $message .= '--'.$frontiere."\n"; $message .= 'Content-Type: text/plain; charset="iso-8859-1"'."\n"; $message .= 'Content-Transfer-Encoding: 8bit'."\n\n"; $message .= $message_texte."\n\n"; //----------------------------------------------- //PIECE JOINTE //----------------------------------------------- $message .= 'Content-Type: image/jpeg; name="'.$uploadfile.'"'."\n"; $message .= 'Content-Transfer-Encoding: base64'."\n"; $message .= 'Content-Disposition:attachement; filename="'.$uploadfile.'"'."\n\n"; $message .= chunk_split(base64_encode(file_get_contents($uploadfile)))."\n"; if(mail($destinataire,$sujet,$message,$headers)) { echo 'Le mail a été envoyé'; } else { echo 'Le mail n\'a pu être envoyé'; }
Merci d'avance
Partager