Looping972 Posté 4 Juillet 2009 Posté 4 Juillet 2009 (modifié) Bonjour à tous, Ne maîtrisant pas du tout le php, j'ai trouvé sur internet un code que j'ai adapté à mon cas et malheureusement, lors de la réception du formulaire dans ma boite aux lettres, les champs restent désespérément vides. J'ai bien-sûr du commettre des erreurs dans le code mais lesquelles ? Voici le code en question : <?php $msg = "Société\t$societe\n";$msg .= "Adresse\t$adresse\n";$msg .= "Nom\t$nom\n";$msg .= "Fonction\t$fonction\n";$msg .= "Téléphone\t$phone\n";$msg .= "Portable\t$portable\n";$msg .= "Courriel\t$courriel\n";$msg .= "Descriptif de votre demande\t$descriptif\n";$msg .= "Dates souhaitées\t$dates\n";$msg .= "Région Pays\t$region\n";$msg .= "Nombre de participants\t$nbpersonnes\n";$msg .= "Budget estimé\t$budget\n";$msg .= "Prestations souhaitées\t$presta\n\n";$recipient = "MON_AT_MAIL.fr";$subject = "formcontact";$mailheaders = "From: MONSITE<> \n";$mailheaders .= "Reply-To: $CP\n\n";mail($recipient, $subject, $msg, $mailheaders);echo "<HTML><HEAD>";echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>";echo "<H1 align=center>Merci, $nom </H1>";echo "<P align=center>";echo "Votre formulaire a bien été envoyé !</P>";echo "</BODY></HTML>";?> Merci par avance à tous ceux qui pourront m'aider à solutionner mon soucis. Modifié 4 Juillet 2009 par Monique Merci d'utiliser codebox pour plus de 10 lignes de code :)
Occi Posté 4 Juillet 2009 Posté 4 Juillet 2009 (modifié) Salut, Remplace $mailheaders = "From: MONSITE<> \n";$mailheaders .= "Reply-To: $CP\n\n"; Par $mailheaders = 'From: mon_AT_email.com'."\r\nReply-To: mon_AT_email.com\r\n".'Date: '.date('r')."\r\n".'MIME-Version: 1.0'."\r\n".'Content-transfer-encoding: 8bit'."\r\n".'Content-type: text/plain; charset=iso-8859-1'; N'oublie pas de remplacer mon_AT_email.com par ton email Petite précision $recipient est l'email du destinataire Modifié 4 Juillet 2009 par Occi
Jeanluc Posté 4 Juillet 2009 Posté 4 Juillet 2009 Il faut des lignes du genre $societe = $_REQUEST['societe'];$adresse = $_REQUEST['adresse'];... avant le code que tu nous indiques. Jean-Luc
Looping972 Posté 4 Juillet 2009 Auteur Posté 4 Juillet 2009 Merci Occi et Jeanluc, J'ai fait les modifs préconisées mais les résultats restent identiques !!! Je pense que je fais encore une erreur quelque part. Je continue de chercher. Merci quand même.
cyberlaura Posté 4 Juillet 2009 Posté 4 Juillet 2009 Bonjour, avant toute chose, il faut vérifier que tu reçois bien les valeurs de ton formulaire. Essaye donc de faire un print_r($_REQUEST); en tout début de ton code. $_REQUEST est un tableau qui contient tous les paramètres passés à ta page, et les champs du formulaire doivent en faire partie. Selon le résultat, on pourra alors t'aiguiller sur le formulaire ou sur l'émission du mail
Looping972 Posté 4 Juillet 2009 Auteur Posté 4 Juillet 2009 Je viens d'effectuer le test que tu m'as indiqué et il ne se passe rien de plus. J'ai à nouveau la liste des champs mais sans leur contenu ! Je précise que j'utilise un formulaire construit avec Dreamweaver MX 2004. Merci encore.
Occi Posté 5 Juillet 2009 Posté 5 Juillet 2009 Essaye ceci dans une page .php vide : <?php$msg = "test";$recipient = "MON_AT_MAIL.fr";$subject = "formcontact";$mailheaders = 'From: mon_AT_email.com'."\r\nReply-To: mon_AT_email.com\r\n".'Date: '.date('r')."\r\n".'MIME-Version: 1.0'."\r\n".'Content-transfer-encoding: 8bit'."\r\n".'Content-type: text/plain; charset=iso-8859-1';mail($recipient, $subject, $msg, $mailheaders);echo "<HTML><HEAD>";echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>";echo "<H1 align=center>Merci, $nom </H1>";echo "<P align=center>";echo "Votre formulaire a bien été envoyé !</P>";echo "</BODY></HTML>";?> En prenant soin de remplacer les données qui doivent l'être ($recipient et $mailheaders) et tu te rends à l'adresse où tu as posé ce code. Normalement tu devrais recevoir un email avec le mot "test" dans son contenu. Si ça ne fonctionne pas vérifie dans ton phpinfo() si tu as la fonction mail activée.
Looping972 Posté 5 Juillet 2009 Auteur Posté 5 Juillet 2009 Merci Occi, Je viens d'effectuer ton test et j'ai bien reçu le mail correspondant avec le mot test ! Donc mon problème est peut-être dans la structure de mon formulaire. Je te donne mon code : <form action="envoi.php" method="post" enctype="text/plain" name="formcontact" class="Style2" id="formcontact"> <blockquote> <p align="left"> <label><strong>Société</strong> <input name="societe" type="text" id="societe" size="20" maxlength="20"> </label> <br> <label><strong>Adresse</strong> <input name="adresse" type="text" id="adresse" size="50" maxlength="50"> </label> <br> <label><strong>Nom</strong> <input name="nom" type="text" id="nom" size="20" maxlength="20"> </label> <label><strong>Fonction</strong> <input name="fonction" type="text" id="fonction" size="20" maxlength="20"> </label> <br> <label><strong>Téléphone</strong> <input name="phone" type="text" id="phone" size="15" maxlength="15"> </label> <label><strong>Portable</strong></label> <input name="portable" type="text" id="portable" size="15" maxlength="15"> <br> <label><strong>Courriel</strong> <input name="courriel" type="text" id="courriel" size="25" maxlength="25"> </label> <br> <label><strong>Descriptif de votre demande</strong></label> <br> <textarea name="descriptif" cols="45" rows="3" id="descriptif"></textarea> <label></label> <br> <label><strong>Dates souhaitées</strong> <input name="dates" type="text" id="dates" size="30" maxlength="30"> </label> <br> <label><strong>Région / Pays</strong> <input name="region" type="text" id="region" size="30" maxlength="30"> </label> <br> <label><strong>Nombre de participants</strong> <input name="nbpersonnes" type="text" id="nbpersonnes" size="6" maxlength="6"> </label> <label><strong>Budget estimé</strong> <input name="budget" type="text" id="budget" size="12" maxlength="12"> </label> <br> <label><strong>Prestations souhaitées (transport, hébergement, ...) </strong></label> <br> <input name="presta" type="text" id="presta" size="50" maxlength="50"> <br> <input name="reset" type="reset" id="reset" value="Réinitialiser"> <input type="submit" name="Submit" value="Envoyer"> </p> </blockquote> </form> Merci par avance
Jeanluc Posté 5 Juillet 2009 Posté 5 Juillet 2009 Essaie en enlevant enctype="text/plain" dans la première ligne du formulaire. Jean-Luc
Looping972 Posté 5 Juillet 2009 Auteur Posté 5 Juillet 2009 Merci à Jeanluc et Occi, J'ai fini par trouver d'où venait mon erreur. En effet, en créant un formulaire html sans aucune autre info que le formulaire cela fonctionnait à merveille donc il ne ne s'agissait pas d'une erreur de mon code d'envoi. J'ai donc créer une iframe dans mon calque dreamweaver avec le form.html seul et tout baigne maintenant. Merci et à bientôt.
Occi Posté 6 Juillet 2009 Posté 6 Juillet 2009 Avec plaisir et tant mieux que tu es trouvé, par contre l'iframe pour le formulaire c'est une rustine. Quand tu auras l'occasion de revoir ton code je te conseille de dénicher ce qui clochait et de mettre ton formulaire directement sur la bonne page A bientôt Occi
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant