Après plusieurs essais infructueux, je me tourne vers des personnes (beaucoup) plus qualifiées que moi en php...
Je rencontre un problème avec mon formulaire de contact incluant une fonction mail qui me renvoie une erreur d'envoi sans que je ne comprenne d'où elle peut venir...
J'ai essayé plusieurs scripts des plus simples aux plus évolués et le problème apparait toujours...
Je vous laisse ci-dessous le code html :
Code : Tout sélectionner
<form action="contact_test.php" method="post">
Mail : <input type="text" name="mail">
<br>
Sujet : <input type="text" name="sujet">
<br>
Message : <textarea name="message" cols="40" rows="20"></textarea>
<br>
<input type="submit" name="envoyer" value="Envoyer">
</form>
Code : Tout sélectionner
<?php
$votre_adresse_mail = 'mon_adresse_mail';
if(isset($_POST['envoyer'])){
if(empty($_POST['mail'])) {
echo "<p>Le champ mail est vide.</p>";
}elseif(!preg_match("#^[a-z0-9_-]+((\.[a-z0-9_-]+){1,})?@[a-z0-9_-]+((\.[a-z0-9_-]+){1,})?\.[a-z]{2,}$#i", $_POST['mail'])){
echo "<p>L'adresse mail entrée est incorrecte.</p>";
}elseif(empty($_POST['sujet'])){
echo "<p>Le champ sujet est vide.</p>";
}elseif(empty($_POST['message'])){
echo "<p>Le champ message est vide.</p>";
}else{
$mail_de_lutilisateur = $_POST['mail'];
$entetes_du_mail = [];
$entetes_du_mail[] = 'MIME-Version: 1.0';
$entetes_du_mail[] = 'Content-type: text/html; charset=UTF-8';
$entetes_du_mail[] = 'From: Nom de votre site <' . $mail_de_lutilisateur . '>';
$entetes_du_mail[] = 'Reply-To: Nom de votre site <' . $mail_de_lutilisateur . '>';
$entetes_du_mail = implode("\r\n", $entetes_du_mail);
$sujet = '=?UTF-8?B?' . base64_encode($_POST['sujet']) . '?=';
$message = htmlentities($_POST['message'], ENT_QUOTES, 'UTF-8');
if(mail($votre_adresse_mail, $sujet, $message, $entetes_du_mail)){
echo "<p>Le mail à été envoyé avec succès !</p>";
}else{
echo "<p>Une erreur est survenue, le mail n'a pas été envoyé.</p>";
}
}
}
?>
Merci d'avance pour votre aide.