Formulaire de contact ne s'envoie pas

Fermé
Chewbie Messages postés 23 Date d'inscription samedi 18 juillet 2009 Statut Membre Dernière intervention 24 août 2011 - 24 août 2011 à 17:40
pitxu Messages postés 689 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 25 mars 2015 - 24 août 2011 à 17:59
Bonjour,

J'ai créé un formulaire de contact pour mon site web. C'est un formulaire dont j'ai déjà utilisé la structure pour un autre site, et cela marchait. Mais là, que ce soit en local ou sur le net, j'ai mon message de confirmation pourtant le mail n'arrive pas, même dans les spam. En local, on me dit de vérifier ma configuration SMTP. Comme vous le verrez, c'est un formulaire simple dont le but est d'envoyer directement un mail dans ma boîte. J'ai essayé avec quatre ou cinq scripts PHP différents, cela doit venir du html mais je ne vois pas où.

Voici mon code html:

<FORM method="POST" action="envoi.php">

<p>Nom<FONT COLOR="red" >*</FONT> : <input type="text" name="nom" size="20"/><br/><br/>

E-mail<FONT COLOR="red" >*</FONT> : <input type="text" name="mail" size="20"/><br/><br/>

Sujet<FONT COLOR="red" >*</FONT> : 
<SELECT NAME="sujet">
<OPTION>Demande d'informations
<OPTION>Demande de rendez-vous
<OPTION>Problème produit
<OPTION>Remarque
<OPTION>Autres
</SELECT>
<br/><br/>

Message<FONT COLOR="red" >*</FONT> : <textarea rows="5" cols="32" name="message" onclick='this.value = erase(this.value)'>Tapez votre texte ici !</textarea><br/><br/>

<span style="font-size: 11.2px; color:red;">*</span> <span style="font-size: 11.2px">= Requis</span><br/><br/><br/><br/><br/>

<input TYPE="SUBMIT" name="envoi" VALUE="Envoyer »">
</form>


Et le code PHP:

<?php 

$nom = $_POST['nom'];
$mail = $_POST['mail'];
$sujet = $_POST['sujet'];
$message = $_POST['message'];

$msg  = "Nom:\t$nom\n";
if(empty($nom)) 
{ 
print("<center>Vous n'avez pas indiqué votre <b>nom</b> ! <br /> Redirection vers la page de contact: <a href= 'contact.html'>cliquez ici</a></center>"); 
exit(); 
} 
$msg .= "Mail:\t$mail\n";
if(empty($mail)) 
{ 
print("<center>Vous n'avez pas indiqué votre <b>e-mail</b> ! <br /> Redirection vers la page de contact: <a href= 'contact.html'>cliquez ici</a></center>");
exit(); 
} 
$msg .= "Sujet:\t$sujet\n";
if(empty($sujet)) 
{ 
print("<center>Vous n'avez pas indiqué le <b>sujet</b> ! <br /> Redirection vers la page de contact: <a href= 'contact.html'>cliquez ici</a></center>");
exit(); 
} 
$msg .= "message:\t$message\n";
if(empty($message)) 
{ 
print("<center>Vous avez oublié d'écrire votre message ! <br /> Redirection vers la page de contact: <a href= 'contact.html'>cliquez ici</a></center>");
exit(); 
} 

$recipient = "mon@mail.com";
$subject = "formulaire";
$redirection = "confirmation.html";
$url_redir = $redirection; 

$mailheaders = "From: Contact<> \n";
$mailheaders .= "Reply-To: $mail\n\n";

mail($recipient, $subject, $msg, $mailheaders);

echo "<script language=\"javascript\">";
echo "window.location=('$url_redir');";
echo "</script>"; 
echo "$reponse";
echo "</BODY></HTML>";

?> 


Voilà, si vous voyez où est le problème dites-le moi, je vous en serai éternellement reconnaissant!

Merci d'avance

1 réponse

pitxu Messages postés 689 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 25 mars 2015 94
24 août 2011 à 17:59
Bonjour,

il faut configurer le serveur smtp dans ton fichier php.ini, si tu es chez orange utilises une adresse @orange.fr et le serveur smtp smtp.orange.fr

en gros dans php.ini :

SMTP = smtp.monFAI.fr
smtp_port = 25
0