Bonjour,
J'ai actuellement un soucis de charset lors d'un envoi automatique de mail avec la fonction mail()
Je suppose que j'ai du oublier quelque chose à quelque part, sachant que j'ai le même problème sur 2 hébergeurs différents, ça vient de moi ^^
Voici donc mon formulaire html :
J'ai remplacé les portions inutiles du code par des [...].
Code html : 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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> [...] </head> <body> [...] <form action="contact.php" method="post" id="myForm"> <fieldset> <legend>Formulaire de Contact</legend> <div class="espacement"></div> <p class="deux_colonnes"> <label for="nom">Nom :</label> <input type="text" id="nom" name="nom" class="validate['required']"/> </p> <p class="deux_colonnes"> <label for="prenom">Prénom :</label> <input type="text" id="prenom" name="prenom" class="validate['required']"/> </p> <p class="deux_colonnes"> <label for="mail">Adresse E-Mail :</label> <input type="text" id="mail" name="mail" class="validate['required','length[5,-1]','email']" /> </p> <p class="deux_colonnes"> <label for="message">Message :</label> <textarea id="message" name="message" rows="10" cols="40" class="validate['required']"></textarea> </p> <p class="deux_colonnes"> <label for="securite">Sécurité, combien font 2+3 ? :</label> <input type="text" id="securite" name="securite" class="validate['required','number','spamcheck']"/> </p> <p class="deux_colonnes"> <input type="submit" value="envoyer" /> </p> </fieldset> </form> [...] </body> </html>
Et voici le php :
Code php : 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 <?php [...] // Si aucun problème et aucun cookie créé, on construit le message et on envoie l'e-mail else { /* Destinataire (votre adresse e-mail) */ $to = '**********************'; /* Construction du message */ $msg = 'Bonjour,'."\r\n\r\n"; $msg .= 'Ce mail a été envoyé depuis la page CONTACT par '.$prenom.' '.$nom."\r\n\r\n"; $msg .= 'Voici le message :'."\r\n"; $msg .= '***************************'."\r\n"; $msg .= $message."\r\n"; $msg .= '***************************'."\r\n"; /* En-têtes de l'e-mail */ $headers = 'From: '.$nom.' '.$prenom.' <'.$expediteur.'>'."\r\n\r\n"; $headers .='Content-Type: text/html; charset="utf-8"'."\n"; /* Envoi de l'e-mail */ if(mail($to, 'Contact - *******', $msg, $headers)) { header("location:succes.html"); } else { header("location:echec.html"); } } } ?>
Le rendu du mail donne ça :
Le content-type est en fait inclus directement dans le corps du message... Ce qui semble à mon avis être une erreur... Pourtant, j'estime ne rien avoir fait motivant ce soucis :pContent-Type: text/html; charset="utf-8"
Bonjour,
Ce mail a été envoyé depuis ************ par Serj A l'Ombre du temple de Dalriel
Voici le message :
***************************
é"'(-è_çà à à à à à à à Ã
***************************
Partager