Bonsoir à tous !

J'ai un soucis d'insertion de plusieurs pièces jointes dans mon mail. Le script fonctionne sur un seul fichier mais pas sur plusieurs...
Pouvez-vous m'aider svp ?

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
<?php
$extensions 	= array('.jpg', '.jpeg','.png','.bmp','.pdf');
$taille_maxi 	= 10485760;
$nbr_max_file	= 10;
 
$extension = strrchr($upload_file['name'], '.');
$taille = filesize($upload_file['tmp_name']);
 
if(!in_array($extension, $extensions))			{$erreur.="<li>&bull; Vous devez uploader un fichier de type jpg, jpeg, png, bmp ou pdf...</li>";}
if($taille>$taille_maxi)						{$erreur.="<li>&bull; La taille maximale des fichiers ne doit pas dépasser 10Mo</li>";}
if(count($upload_file['name']) > $nbr_max_file)	{$erreur.="<li>&bull; Trop de fichiers uploadés</li>";}
 
// Création du message
if($erreur==""){
 
foreach($_FILES as $upload_file){
 
$tmp_name = file_get_contents($upload_file['tmp_name']);
$attachement = chunk_split(base64_encode($tmp_name));
 
$EmailDesti		= LE_MAIL;
$LeSujet		= $data['Titre'];
 
$LeMessageHTML	= "<html></html>";
 
//=====On filtre les serveurs qui présentent des bogues.
if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $EmailDesti)){$passage_ligne = "\r\n";}else{$passage_ligne = "\n";}
//=====Déclaration des messages au format texte et au format HTML.
$message_html 	= $LeMessageHTML;
//=====Lecture et mise en forme de la pièce jointe.
foreach($_FILES as $upload_file){
$tmp_name = file_get_contents($upload_file['tmp_name']);
$attachement = chunk_split(base64_encode($tmp_name));
 
//=====Création de la boundary.
$boundary 		= "-----=".md5(rand());
$boundary_alt 	= "-----=".md5(rand());
//=====Définition du sujet.
$sujet 			= $LeSujet;
//=====Création du header de l'e-mail.
$header = "From: ".$Fr_AdresseMail.$passage_ligne;
$header.= "MIME-Version: 1.0".$passage_ligne;
$header.= "Content-Type: multipart/mixed;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne;
//=====Création du message.
$message = $passage_ligne."--".$boundary.$passage_ligne;
$message.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary_alt\"".$passage_ligne;
$message.= $passage_ligne."--".$boundary_alt.$passage_ligne;
//=====Ajout du message au format HTML.
$message.= "Content-Type: text/html; charset=\"UTF-8\"".$passage_ligne;
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$message.= $passage_ligne.$message_html.$passage_ligne;
//=====On ferme la boundary alternative.
$message.= $passage_ligne."--".$boundary_alt."--".$passage_ligne;
$message.= $passage_ligne."--".$boundary.$passage_ligne;
//=====Ajout de la pièce jointe.
$message.= 'Content-type:'.$upload_file['type'].';name='.$upload_file['name'].$passage_ligne;
$message.= "Content-Transfer-Encoding: base64".$passage_ligne;
$message.= "Content-Disposition: attachment; filename=".$upload_file['name'].$passage_ligne;
$message.= $passage_ligne.$attachement.$passage_ligne.$passage_ligne;
$message.= $passage_ligne."--".$boundary."--".$passage_ligne; 
	}
//=====Envoi de l'e-mail.
if(mail($EmailDesti,$sujet,$message,$header)){
$ok_mail="true";
 
}else{$erreur.="<li>".$ERREUR_ERROR_1."</li>";}}
}
?>
 
<input name="Fr_Photos[]" id="Fr_Photos" type="file" multiple >