Aide pour formulaire php [UP]
Résolu
cedlu43
Messages postés
626
Statut
Membre
-
Stephane -
Stephane -
Bonjour à tous,
J'ai essayer de créer aujourd'hui un site pour me donner des statistiques françaises, mais je n'arrive pas à me créer mon formulaire (je ne reçois aucun mail)...
Voici mon index.html (juste un bout) :
<form method="post" action="contact.php">Prenom : <input name="prenom"><br>
nom : <input name="nom"><br>
<br>
<input value="Valider" type="submit"></form>
Voicii mon contact.php :
<?php
if(isset($_POST) && isset($_POST['prenom']) && isset($_POST['nom'])){
extract($_POST);
if(!empty($nom) && !empty($prenom)){
$destinataire="ludoludo@hotmail.fr";
$sujet="statistiques";
$msg="statistiques \n
prenoml : $prenom \n
nom : $nom \n
$entete="From : $nom $prenom \n Reply-To: $nom $prenom";
mail($destinaire,$sujet,$msg,$entete);
echo "<center><b>Merci de votre participation</b></center>";
}
else{
echo "Une erreur est survenue";
}
}
?>
Le message apparait : Merci de votre participation, mais je ne reçois aucun email sur mon adresse ... Merci aux gens qui souhaitent m'aider.
Cordialement, Ludo.
1 an sur CCM :)
J'ai essayer de créer aujourd'hui un site pour me donner des statistiques françaises, mais je n'arrive pas à me créer mon formulaire (je ne reçois aucun mail)...
Voici mon index.html (juste un bout) :
<form method="post" action="contact.php">Prenom : <input name="prenom"><br>
nom : <input name="nom"><br>
<br>
<input value="Valider" type="submit"></form>
Voicii mon contact.php :
<?php
if(isset($_POST) && isset($_POST['prenom']) && isset($_POST['nom'])){
extract($_POST);
if(!empty($nom) && !empty($prenom)){
$destinataire="ludoludo@hotmail.fr";
$sujet="statistiques";
$msg="statistiques \n
prenoml : $prenom \n
nom : $nom \n
$entete="From : $nom $prenom \n Reply-To: $nom $prenom";
mail($destinaire,$sujet,$msg,$entete);
echo "<center><b>Merci de votre participation</b></center>";
}
else{
echo "Une erreur est survenue";
}
}
?>
Le message apparait : Merci de votre participation, mais je ne reçois aucun email sur mon adresse ... Merci aux gens qui souhaitent m'aider.
Cordialement, Ludo.
1 an sur CCM :)
4 réponses
-
-
Bonjour,
Sans entete plus explicite (et même ainsi), je pense qu'hotmail refuse ce mail. Ces services de messagerie sont très stricts et sont paramétrés pour rejeter tout mail non conformes à la norme RFC 2822 et RFC 2047.
A lire https://www.php.net/manual/fr/function.mail.php
PS : script minimaliste pour vérifier les données et envoyer un mail en PHP
@+ -
-
J'ai trouvé ce code qui marche sur http://www.msp-business.com/tutoriel.html :
Ce code est à insérer dans votre fichier index.html (entre <BODY> et </BODY>) :
<FORM method=POST action=monformulaire.php target="_blank">
<input type=hidden name=subject value=monadhesion>
<BR>
<INPUT NAME="monnom" TYPE="text" SIZE="30"> <BR>
<INPUT NAME="monemail" TYPE="text" SIZE="30"><BR>
<BR>
<TEXTAREA NAME="comments" COLS="30" ROWS="10">Entrez ici votre commentaire:
</TEXTAREA>
<BR>
<BR>
<INPUT TYPE="SUBMIT" VALUE="Validation">
</FORM>
Dans un fichier "monformulaire.php", écrivez le code suivant :
<?php
$TO = "votreemail@hotmail.com";
$subject = "Voici le titre du mail que vous recevrez automatiquement";
$h = "From: " . $TO;
$message = "Voici le message qui sera écrit automatiquement dans le mail que vous recevrez, à chaque fois qu'un visiteur souhaitera vous laisser un message";
while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
header("Location:accuse.html");
?>
Vérifiez bien qu'il n'y a aucun caractère, espace ou saut de ligne à la fin du code ( ?>). Le moindre caractère supplémentaire peut entrainer un dysfonctionnement du programme.
Voici le code à écrire dans le fichier "accuse.html" :
<HTML>
<HEAD>
</HEAD>
<BODY>
<BR>
Merci, votre commentaire a été envoyé.
<BR>
Si vous l'avez demandé, nous vous contacterons dans les plus brefs délais.
<BR>
Vous pouvez maintenant fermer cette fenêtre pour revenir au site.
<BR>
</BODY>
</HTML>
Bonne chance!
Seb