Bonjour,
Avec le code ci-après d'un formulaire de contact php, la pièce jointe n'est pas transférée avec le reste du mail.
Un peu d'aide me serait bien utile.
Merci
Avec le code ci-après d'un formulaire de contact php, la pièce jointe n'est pas transférée avec le reste du mail.
Un peu d'aide me serait bien utile.
Merci
Code:
<?php
// Initialise les variables
$erreur = NULL;
$info = NULL;
if(!empty($_POST)){
extract($_POST);
$valid=true;
if($adresse!=""){
}
else{}
if(empty($nom)){
$valid=false;
$erreurnom="Vous n'avez pas indiqué votre nom";
}
if(empty($prenom)){
$valid=false;
$erreurprenom="Vous n'avez pas indiqué votre prénom";
}
if(empty($email)){
$valid=false;
$erreuremail="Vous n'avez pas indiqué votre adresse email";
}
if(empty($objet)){
$valid=false;
$erreurobjet="Vous n'avez pas indiqué l'objet de votre message";
}
if(empty($message)){
$valid=false;
$erreurmessage="Vous n'avez pas indiqué votre message";
}
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $email)){
$nom = htmlentities(addslashes($nom));
$email = htmlentities(addslashes($email));
$message = htmlentities(addslashes($message));
$message = 'Nom : '.$nom.' Prenom : '.$prenom.' '."\n".' Email : '.$email.' '."\n".' Message : '.$message.'';
$sujet = 'Objet: '.$objet.'';
$destinataire = "contact@monsite.fr";
$boundary = "_".md5 (uniqid (rand()));
$attached_file = file_get_contents($file_name); //file name ie: ./image.jpg
$attached_file = chunk_split(base64_encode($attached_file));
$attached = "\n\n". "--" .$boundary . "\nContent-Type: application; name=\"$file_name\"\r\nContent-Transfer-Encoding: base64\r\nContent-Disposition: attachment; filename=\"$file_name\"\r\n\n" .$attached_file . "--" . $boundary . "--";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
$headers .="From: $prenom $nom <$email>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";
$body = "--". $boundary ."\nContent-Type: text/plain; charset=ISO-8859-1\r\n\n".$message . $attached;
$message = stripslashes($message);
$nom = stripslashes($nom);
if(mail($destinataire,$sujet,$message,$headers));
$info = 'Votre message à été envoyé';
unset($_POST);
unset($message);
unset($objet);
unset($email);
unset($nom);
unset($prenom);
}
else{
$erreur = 'Votre adresse email est invalide';
}
}
else {
$erreur = 'Veuillez remplir tous les champs obligatoires *';
}
?>
<!DOCTYPE html>
<!--[if lt IE 9]><html lang="fr-FR" class="oldie"><![endif]-->
<!--[if (gte IE 9) | !(IE)]><!--><html lang="fr-FR" class="modern"><!--<![endif]-->
<head>
<meta charset="iso-8859-1" />
</head>
<form method="post" id="formulaire_contact" target="">
<fieldset>
<h2> Formulaire de contact</h2>
<span style="color:red"> <?php echo $erreur; ?></span><span style="color:green"> <?php echo $info; ?></span><br><br>
<label for="pseudo">Votre Nom* : <span style="color:red" id="error-message"><?php if(isset($erreurnom)) echo $erreurnom;?></span> </label><input type="text" name="nom" id="nom" size="43" maxlength="50" value="<?php if(isset($nom)) echo $nom; ?>"/><br/>
<label for="pseudo">Votre Prenom* : <span style="color:red" id="error-message"><?php if(isset($erreurprenom)) echo $erreurprenom;?></span></label><input type="text" name="prenom" id="prenom" size="43" maxlength="50" value="<?php if(isset($prenom)) echo $prenom; ?>"/><br/>
<input type="text" name="adresse" id="adresse"/>
<label for="email">Email* : <span style="color:red" id="error-email"><?php if(isset($erreuremail)) echo $erreuremail;?></span></label><input type="text" name="email" id="email" size="43" maxlength="50" value="<?php if(isset($email)) echo $email; ?>"/><br/>
<label for="site">Objet* : <span style="color:red" id="error-message"><?php if(isset($erreurobjet)) echo $erreurobjet;?></span></label><input type="text" name="objet" id="objet" size="43" maxlength="50" value="<?php if(isset($objet)) echo $objet; ?>" /><br/>
<label for="message">Message* : <span style="color:red" id="error-message"><?php if(isset($erreurmessage)) echo $erreurmessage;?></span></label><textarea name="message" id="message" cols="60" rows="10" ><?php if(isset($message)) echo $message; ?></textarea><br/><br/>
<label for="fichier"><strong>Pièce Jointe:</strong></label>
<span class="small">(<span style="color: #FC0000; font-size: 10px;">max. 1MB</span>)</span></td>
<td>
<input type="hidden" name="max_file_size" value="2097152" />
<input type="file" name="datei" size="32" maxlength="500" class="eingabe" />
</td>
<br><br>
<input type="submit" value="Envoyer"/>
<input type="text" name="adresse" id="adresse"/>
</fieldset>
</form>
</div>
</body>
</html>