Bonjour

J'ai un formulaire avec upload de fichier, le problème est sur le mail accompagnement les caracteres avec accents ne s'affichent pas correctement
Sur mes formulaires classiques pas de pb en ajoutant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
//////ici on détermine le mail en format texte 
$headers .= "Content-type: text/plain; charset=UTF-8";
mais sur celui ci je n'y arrrive pas
Ex resultat Nom=nouveau tésr

Merci pour votre aide
Code formulaire
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<?PHP 
session_start();
/* Nous testons que la variable existe et qu'elle a bien la longueur souhaitée */
if(!isset($_SESSION['code'])) exit("Erreur réactualisez votre page!");
 
/* Comparaison entre les deux valeurs si elles sont différentes on arrete tout sinon on continue et on envoie le mail */
if($_SESSION['code'] != $_POST['verif']) exit("Erreur les valeurs sont differentes !");
 
$page_courante=1;
$num_cde=rand(10000,90000);
if ($_SESSION['page_courante']>$page_courante)
{
$retour_precedent=true;
}
$_SESSION['page_courante']=$page_courante;
$url_upload='';
$data='';
function convert_date_fr($date){
$myd=explode("/",$date);
return $myd[2]."-".$myd[1]."-".$myd[0];
}
 
$_SESSION["champs"]["1"]["libelle"]="Nom";$_SESSION["champs"]["1"]["contenu"]=str_replace('"','\"',$_POST["id_1"]);$_SESSION["champs"]["2"]["libelle"]="Prénom";$_SESSION["champs"]["2"]["contenu"]=str_replace('"','\"',$_POST["id_2"]);$_SESSION["champs"]["3"]["libelle"]="Adresse";$_SESSION["champs"]["3"]["contenu"]=str_replace('"','\"',$_POST["id_3"]);$_SESSION["champs"]["4"]["libelle"]="Code Postal";$_SESSION["champs"]["4"]["contenu"]=str_replace('"','\"',$_POST["id_4"]);$_SESSION["champs"]["5"]["libelle"]="Ville";$_SESSION["champs"]["5"]["contenu"]=str_replace('"','\"',$_POST["id_5"]);$_SESSION["champs"]["6"]["libelle"]="Email";$_SESSION["champs"]["6"]["contenu"]=str_replace('"','\"',$_POST["id_6"]);
$_SESSION["champs"]["16"]["libelle"]="Autre commentaire";
$_SESSION["champs"]["16"]["contenu"]=str_replace('"','\"',$_POST["id_16"]);
 
$page_web="[page_prec]";
$page_web=str_replace("[SESSION_ID]","?".session_name()."=".session_id(),$page_web);
$chiffre=rand(100,999).rand(100,999).rand(100,999);
$content_dir = 'upload/'; 
$content_dir.=$chiffre."/";
$envoi_mail_pj=1;
 
IF (!file_exists("./upload")){
umask(0);
@mkdir("./upload",0777);
}
IF (!file_exists("./upload/$chiffre")){
umask(0);
@mkdir("./upload/$chiffre",0777);
}$nb_fic=0;
$url_chemin=str_replace("formulaire.php","","http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'] );
$tmp_file = $_FILES['id_14']['tmp_name'];
if (is_uploaded_file($tmp_file['tmp_name'])) {
 
exit("Le fichier est introuvable");
}
 
if ( $_FILES['id_14']['size']>75000){
exit("Le poids de votre fichier est trop important.");
}
 
// on vérifie maintenant l'extension
$type_file1 = explode(".",$_FILES['id_14']['name']);
$type_file=strtolower($type_file1[count($type_file1)-1]);
if (!strstr($type_file, 'doc')&&  !strstr($type_file, 'docx')&&  !strstr($type_file, 'pdf')){
exit("Le type de fichier " . $type_file . " n'est pas autorisé ou fichier vide");
}
 
// on copie le fichier dans le dossier de destination
$name_file = $_FILES['id_14']['name'];
 
if( @preg_match('#[\x00-\x1F\x7F-\x9F/\\]#', $name_file))
{
exit("Nom de fichier non valide");
}
else {
if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
{
exit("Impossible de copier le fichier dans $content_dir");
}
else {
  $url_upload.='fichier à télécharger sur le serveur : '.$url_chemin.$content_dir . str_replace(" ","%20",$name_file) .'<br>';
  $nb_fic++;
$tab_fic[$nb_fic][0]=$content_dir . $name_file;
$tab_fic[$nb_fic][1]=$_FILES['id_14']['type'];
}	
}
$tmp_file = $_FILES['id_15']['tmp_name'];
 
 
if ( $_FILES['id_15']['size']>75000){
exit("Le poids de votre fichier est trop important.");
}
 
// on vérifie maintenant l'extension
$type_file = explode(".",$_FILES['id_15']['name']);
$type_file=strtolower($type_file1[count($type_file1)-1]);
if (!strstr($type_file, 'doc')&&  !strstr($type_file, 'docx')&&  !strstr($type_file, 'pdf')){
exit("Le type de fichier " . $type_file . " n'est pas autorisé");
}
 
// on copie le fichier dans le dossier de destination
$name_file = $_FILES['id_15']['name'];
 
if( @preg_match('#[\x00-\x1F\x7F-\x9F/\\]#', $name_file))
{
exit("Nom de fichier non valide");
}
else {
if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
{
exit("Impossible de copier le fichier dans $content_dir");
}
else {
  $url_upload.='fichier à télécharger sur le serveur : '.$url_chemin.$content_dir . str_replace(" ","%20",$name_file) .'<br>';
 
  $nb_fic++;
$tab_fic[$nb_fic][0]=$content_dir . $name_file;
$tab_fic[$nb_fic][1]=$_FILES['id_15']['type'];
}	
}
 
$data.=$url_upload;
include('class.phpmailer.php');
if (@count($_SESSION["champs"] )>0) {
   foreach ($_SESSION["champs"] as $key => $value) {
     $data.=$value["libelle"]."=".$value["contenu"]."<br>";
   }
}
 
$data.=$msg_client_txt; 
$mail = new PHPMailer();
$mail->From     = "test";
$mail->FromName = "";
$mail->Subject="test1" ;
$mail->AddAddress('contact@......fr', '');
 
$mail->Body    = $data.$msg_html_prod;
$mail->AltBody = $data.$msg_txt_prod;
      if ($nb_fic>0 && $envoi_mail_pj==1){ 
$x=1;
 
while ($x<=count($tab_fic)){
 
//$m->attachFile($tab_fic[$x][0],$tab_fic[$x][1]);
$mail->AddAttachment($tab_fic[$x][0], $tab_fic[$x][1]);
$x++;
}
}
$mail->send();
session_destroy() ;
header("location: http://www......fr/merci.html");
exit();
?>
fichier php mailer
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
class PHPMailer {
 
  /////////////////////////////////////////////////
  // PROPERTIES, PUBLIC
  /////////////////////////////////////////////////
 
  /**
   * Email priority (1 = High, 3 = Normal, 5 = low).
   * @var int
   */
  var $Priority          = 3;
 
  /**
   * Sets the CharSet of the message.
   * @var string
   */
  var $CharSet           = 'charset=UTF-8';
 
  /**
   * Sets the Content-type of the message.
   * @var string
   */
  var $ContentType        = 'text/plain';
 
  /**
   * Sets the Encoding of the message. Options for this are "8bit",
   * "7bit", "binary", "base64", and "quoted-printable".
   * @var string
   */
  var $Encoding          = '8bit';