Sujet : [cloturé par gilledunord] Envoi de 3 fichier par formulaire
Bonjour
Depuis un formulaire j'essaye d'envoyé 3 fichiers pour les recevoir dans ma boite mail mais je n'en reçois qu'un.
Quelqu'un peut t-il m'aider ?
Le formulaire :
<form method="POST" action="mail.php" enctype="multipart/form-data">
<input type="file" name="fichier">
<input type="file" name="fichier">
<input type="file" name="fichier">
<input type="submit" name="envoyer" value="Poster"></p>
</form>
le fichier php :
<?php
$name_file = ($_FILES['fichier']['name']);
$source = ($_FILES['fichier']['tmp_name']);
move_uploaded_file($source, "./".$name_file);
$extension=get_extension($name_file);
$type="text/plain";
if($type=="doc")
{
$type="text/vnd.ms-word";
}
else if($type=="xls")
{
$type="text/vnd.ms-excel";
}
$type2="image/png";
if($extension=="gif")
{
$type2="image/gif";
}
else if($extension=="bmp")
{
$type2="image/bmp";
}
function get_extension($filename)
{
$parts = explode('.',$filename);
$last = count($parts) - 1;
$ext = $parts[$last];
return $ext;
}
{
$boundary = "-----=".md5(uniqid(rand()));
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
$header .= "\r\n";
$msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";
$msg .= "--$boundary\r\n";
$msg .= "Content-Type: $type; charset=\"iso-8859-1\"\r\n";
$msg .= "Content-Transfer-Encoding:8bit\r\n";
$msg .= "ici la page en htm";
if($name_file!="")
{
$file = $name_file;
$fp = fopen($file, "rb");
$attachment = fread($fp, filesize($file));
fclose($fp);
$attachment = chunk_split(base64_encode($attachment));
$msg .= "--$boundary\r\n";
$msg .= "Content-Type: $type2; name=\"$file\"\r\n";
$msg .= "Content-Transfer-Encoding: base64\r\n";
$msg .= "Content-Disposition: inline; filename=\"$file\"\r\n";
$msg .= "\r\n";
$msg .= $attachment . "\r\n";
$msg .= "\r\n\r\n";
$msg .= "--$boundary--\r\n";
}
$destinataire = 'monmail@sfr.fr';
$expediteur = 'Formulaire_de_mon_site';
$sujet = 'Mons site';
$reponse = $expediteur;
mail($destinataire,$sujet,$msg,
"Reply-to: $reponse\r\nFrom: $expediteur\r\n".$header);
}
if($name_file!="")
{
unlink($name_file);
}
?>
mes essais :
<input name="fichier" type="file" />
<input name="fichier" type="file" />
<input name="fichier" type="file" />
puis
<input name="fichier1" type="file" />
<input name="fichier2" type="file" />
<input name="fichier3" type="file" />
puis
<input name="fichier[]" type="file" />
<input name="fichier[]" type="file" />
<input name="fichier[]" type="file" />
puis
<input name="fichier[1]" type="file" />
<input name="fichier[2]" type="file" />
<input name="fichier[3]" type="file" />
Je n'ai pas de déclaration d'erreur et je ne reçois qu'un seul fichier.
Regardé plusieurs forums qui indiquent de mettre la dernière version mais ça ne marche pas, ni en local avec WampServer2 ni sur un hébergeur.
Gilledunord