Bonjour,
j’ai un formulaire HTML qui contient des champs :
<input type="text" name="nom" value="NOM" border="0" style="width:150px">
Mon formulaire lorqu’il est validé fait appel a un fichier php
<form name="contact" method="post" action="contactok.php" >
Mon formulaire contacok contient le code suivant :
<?
// ADRESSE DU DESTINATAIRE
$to="contact@contac.com";
//
// SUJET DU MESSAGE
$sujet=".Message.";
// ENTETES
$entetes="From:$nom $prenom<$mail>\r\n";
// MESSAGE
$msg.="\nNom : $nom\n";
$msg.="E mail : $mail\n";
$msg.="\nMessage :\n\n$message";
$msg = stripslashes($msg);
if (mail($to,$sujet,$msg,$entetes))
{
?>
<p align="center" class="Style1"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre message
a bien été envoyé.<br>
<br>
</font><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A bientôt.
<?
}
else
{
?>
<!--<p> </p>-->
</font> </p>
<p align="center" class="Style1"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Erreur !<br>
Nous vous invitons à resaisir votre message ultérieurement .<br>
Toutes nos excuses pour cet incident technique.</font><font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></p>
<?
}
?>
Voici ma question… Est il possible de rajouter un champ permettant d’envoyer une pièce jointe ??
Si oui que dois je ajouter ?
Merci d’écalairer ma lanterne
Essaye <input type="file" … />
Il doit aussi y avoir d’autres contraintes au niveau du tag form.
le <input type=“file” … /> marche en effet, mais le soucis c’est comment le gérer en php…
j’ai est champ permettant de choisir son fichier mais comment faire pour l’envoyer ??.. :neutre:
Si je me trompe pas, tu récupères les fichiers dans $_FILES, et il faut ensuite les déplacer avec la fonction move_uploaded_file.
Par contre je te demanderai de mettre le langage dans le titre.
le form doit contenir enctype="multipart/data"
aïe aïe aïe… j’vais bien finir par la trouver ma solution ^^…
ça doit po etre bien compliqué … 
bon alors j’ai réussi mais j’ai encore un soucis…
Voici mon code…
J’ai modifié mon code en ajoutant dans la balise Form :
<form name="contact" method="post" action="contactok.php" enctype="multipart/form-data">
et un champ :
<input type=file size=40 name="attach">
Dans mon Script PHP, j’ai ajouter :
if (is_uploaded_file($attach)) {
$file = fopen($attach, "r");
$contents = fread($file, $attach_size);
$encoded_attach = chunk_split(base64_encode($contents));
fclose($file);
$entetes.= "MIME-version: 1.0\n";
$entetes.= "Content-type: multipart/mixed; ";
$entetes.= "boundary=\"Message-Boundary\"\n";
$entetes.= "Content-transfer-encoding: 7BIT\n";
$body_top = "--Message-Boundary\n";
$body_top .= "Content-type: text/plain; charset=US-ASCII\n";
$body_top .= "Content-transfer-encoding: 7BIT\n";
$body_top .= "Content-description: Mail message body\n\n";
$msg .= "\n\n--Message-Boundary\n";
$msg .= "Content-type: $attach_type; name=\"$attach_name\"\n";
$msg .= "Content-Transfer-Encoding: BASE64\n";
$msg .= "Content-disposition: attachment; filename=\"$attach_name\"\n\n";
$msg .= "$encoded_attach\n";
$msg .= "--Message-Boundary--\n";
}
$msg = stripslashes($msg);
if (mail($to,$sujet,$msg,$entetes))
{
?>
<p align="center" class="Style1"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre message a bien été envoyé.<br>
</font></p>
<p align="center" class="Style1"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A bientôt.
<?
}
else
{
?>
<!--<p> </p>-->
</font> </p>
<p align="center" class="Style1"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Erreur !<br>
Erreur</font><font size="2" face="Verdana, Arial, Helvetica, sans-serif"></font></p>
<?
}
?>
L’envoi de la pièce jointe marche parfaitement… mais… le message envoyé par le formulaire ne passe plus :??:
Quelqu’un peut il me dire ou est l’erreur ??? Merci…
c bon j’ai trouvé…
$msg = $body_top.stripslashes($msg);
merci encore ^^