Problème de réception de mails liés à un formulaire

Fermé
Eric78 - 13 juil. 2021 à 12:32
lugdanum Messages postés 116 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 4 novembre 2024 - 14 juil. 2021 à 16:37
Bonjour à tous,

Je viens solliciter votre aide car je m'arrache les cheveux depuis hier sur un problème.
Je veux recevoir un mail reprenant les données renseignés par l'utilisateur dans un formulaire.
Tout cela fonctionne très bien lors de mes essais en local, tout est nickel !
Mais ça ne fonctionne plus lorsque je mets le site en ligne (mon frère m'a laissé une place sur son hébergeur DRI).
Pas de message d'erreur spécifique, le mail semble bien partir, mais je ne reçois rien dans ma boîte de destination.

Voici mes extraits de code :

HTML:
<form action="confirmformulaire.php" method="post">
<div>
<label for="name" class="intitule">Nom :</label>
<input type="text" id="name" required name="user_name" />
</div>
<div>
<label for="mail" class="intitule">e-mail :</label>
<input type="email" id="mail" required name="user_mail" />
</div>
<div>
<label for="phone" class="intitule">Téléphone : <a class="afacultatif"> (facultatif)</a></label>
<input type="tel" id="phone" name="user_phone" pattern="[0-9]{10}" maxlength="10" />
</div>

<div>
<label for="msg" class="intitule">Message :</label>
<textarea id="msg" required name="user_message"></textarea>
</div>

<div class="conteneurbutton2">
<button id="button2" type="submit" name="envoi">Envoyer le message</button>
</div>
</form>

PHP :
<?php
if (!empty($_POST)) {

$nom = $_POST['user_name'] ;
$mail = $_POST['user_mail'] ;
$phone = $_POST['user_phone'] ;
$message = $_POST['user_message'] ;

//ini_set("SMTP", "smtp.xxxx .fr"); (à utiliser uniquement pour les tests en local)

$mailheaders = "MIME-Version: 1.0\n";
$mailheaders .= "Content-type: text/html; charset=ISO-8859-1\n";
$mailheaders .= 'Reply-To: '.$mail."\n";
$mailheaders .= 'From: ' .$mail."\n";

$msg = '<h1>Message envoyé depuis la page Contact de mon site</h1>
<p><b>Nom : </b>' .$nom. '<br>
<b>Email : </b>' .$mail.'<br>
<b>Téléphone : </b>' .$phone.'<br>
<b>Message : </b>' .$message. '</p>';

$recipient = "monmail";
$subject = "Réponse au Formulaire";

mail($recipient, $subject, $msg, $mailheaders);
}
?>

Merci par avance de votre aide et bonne journée.
A voir également:

1 réponse

lugdanum Messages postés 116 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 4 novembre 2024 41
14 juil. 2021 à 16:37
Hello

Alors avant tout, j'espère que tu ne vas pas le publier dans cette état. Il faut au minimum vérifier les champs ! regarde du côté par exemple de FILTER_VALIDATE_EMAIL, de htmlspecialchars, htmlentities...

Regarde ici un exemple : https://www.w3schools.com/php/php_form_url_email.asp
et là : https://www.w3schools.in/php/mail/

Après il faut aussi peut-être voir du côté du php.ini de chez ton frère, celui-ci n'est peut-être pas configuré de la manière adéquate...


@+

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Ma réponse t'a un peu aidé ? Si oui, un petit merci... Merci.
0