Se connecter avec
S'enregistrer | Connectez-vous

Test- Qu'est ce qui ne va pas avec ce formulaire?

Dernière réponse : dans Programmation

Bon voilà j'ai fais un test donc biensur rien est rédigé mais bref ca ne marche pas quand même mon formulaire de contact, je vous passe les codes:
Code html:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  2. "<a href="http://www.w3.org/TR/REC-html40/loose.dtd" target="_blank">http://www.w3.org/TR/REC-html40/loose.dtd</a>">
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  6. <title>Mon formulaire.</title>
  7. <style type="text/css" media="all">
  8. td {font-weight: bold; text-align: right;}
  9. td.liste{text-align: left;}
  10. th {font-size: 2em; color: red; padding: 0; border-bottom: 1px solid red;}
  11. </style>
  12. <style type="text/css" media="print">
  13. div.nepasvoir p:first-line {font-weight: bold;}
  14. tr#nepasimprimer {display: none;}
  15. </style>
  16. <style type="text/css" media="screen">
  17. div.nepasvoir {display: none;}
  18. td.info{border-left : 3px solid red; border-bottom: 1px solid red}
  19. td.champ{border-right : 1px solid red;}
  20. td {padding: 0.25em 1px;}
  21. td.subject{border-left : 3px solid green; border-bottom: 1px solid green}
  22. td.liste{ border-top: 1px dotted red; border-right: 1px solid green; border-bottom: 1px solid green;}
  23. td.contenu{border-left : 3px solid gray; border-bottom: 1px solid gray}
  24. td.contenant{border-right : 1px solid gray; border-bottom: 1px solid gray}
  25. td.lesboutons{}
  26. </style>
  27. </head>
  28. <body>
  29. <form name='formulaire' action='traitement.php' method='post'>
  30. <table cellspacing="0">
  31. <th colspan="2">Formulaire de contact</th>
  32. <tr><td class="info">Votre nom : </td><td class="champ"><input name='nom' type='text' size='50' class="writein"></td></tr>
  33. <tr><td class="info">Votre prénom : </td><td class="champ"><input name='prenom' type='text' size='50' class="writein"></td></tr>
  34. <tr><td class="info">Votre email</td><td class="champ"><input name='email' type='text' size='50' class="writein"></td></tr>
  35. <tr><td class="subject">Le motif de votre message</td><td class="liste"><input name='sujet' type='radio' value='renseignement'>Renseignement<br>
  36. <input name='sujet' type='radio' value='probleme technique'> Probleme technique<br>
  37. <input name='sujet' type='radio' value='partenariat'>Partenariat</td></tr>
  38. <tr><td class="contenu">Votre message</td><td class="contenant"><textarea name='texte' cols='50' rows='20' class="writein"></textarea></td></tr>
  39. <tr id="nepasimprimer"><td class="lesboutons"><input name='annuler' type='reset' value='Annuler'></td><td>
  40. <input name='soumettre' type='submit' value='Envoyer'></td></tr>
  41. </table>
  42. <div class="nepasvoir">
  43. Tous les champs du formulaire <strong>doivent</strong> être remplis.
  44. <p>
  45. Envoyez le formulaire par la poste à:<br>
  46. Dr Duschmoll<br>
  47. 44, rue des maures
  48. <br> AZ445 Djoumbala - France<br>
  49. Ou par fax au 01 34 56 76 56
  50. </p>
  51. </div>
  52. </form>
  53. </body>
  54. </html>



le code php:
  1. <?php
  2. $adresse="youx@hotmail.fr";
  3. $from="From: $prenom $nom<$email>\r\n";
  4. $from.="Reply-To: $prenom $nom <$email>\n";
  5. $from.="X-priority:3\n";
  6. $texte="<html>";
  7. $texte.="$texte";
  8. $texte.="</html>";
  9. $from.="MIME-Version: 1.0\r\n";
  10. $from.="Content-Type: text/html";
  11. if (mail($adresse,$sujet,$texte,$from))
  12. echo("<center><font color=green><br><br><br><h2>Formulaire envoyé ! Je vous répondrais rapidement. Merci!</h2></font><br><a href=/>Cliquez ici pour revenir à l'accueil</a></center>");
  13. else
  14. echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href="$adresse">classiquement</a>");
  15. ?>


Et voilà le message d'erreur que j'obtiens lorsuque je clique sur "envoyer": "
Parse error: syntax error, unexpected T_VARIABLE in C:\wamp\www\traitement.php on line 14"


Merci

Autres pages sur : test formulaire

Lassé par la pub ? Créez un compte
Expert Programmation

Salut,

  1. echo("<center><font color=red><br><br><br><h2>Problème à l'envoi du mail...désolé nous ne pouvons actuellement traiter votre demande</h2></font><br>Contactez nous plus <a href="$adresse">classiquement</a>" );


Il faut backslasher tes " dans ton code. (...)href=\"$adresse\"(...)


Sinon, je t'invite à regarder quelques cours sur les failles des formulaires de contacts de ce type.
Et en recherchant, je m'aperçois que tu suis ce cour : http://www.mmt-fr.org/article78.html
N'oublie pas le paragraphe "hack hack hack".

Sinon, il faut supprimer les caractères "\r" et "\n" de tout ce que tu mets dans le header de ton mail.
Donc :
  1. $prenom : str_replace(array("\r", "\n" ), '', $prenom);
  2. $nom: str_replace(array("\r", "\n" ), '', $nom);
  3. $email: str_replace(array("\r", "\n" ), '', $email);


Sinon il est très facile de détourner tous les mails et tu ne recevras même pas les messages, et ça se transforme en fournisseur de spam.
Lassé par la pub ? Créez un compte
Tom's guide dans le monde