Se connecter / S'enregistrer
Votre question

Formulaire avec envoi par e-mail

Tags :
  • Email
  • Programmation
Dernière réponse : dans Programmation
13 Décembre 2009 16:47:13

Bonjour, j'ai créer un formulaire, mais j'aimerais savoir comment l'envoyer à l'email que la personne à mis dans le formulaire svp, et aussi l'envoyer à mon e-mail.
Svp aidez-moi :s

Autres pages sur : formulaire envoi mail

13 Décembre 2009 17:28:40

google : formulaire email php
m
0
l
Contenus similaires
15 Décembre 2009 18:40:59

Bonjour,

Comme le faisait remarquer, de manière peut être un peu abrupte, Okinou, il faut que tu passes par un langage tel que php. Ce qui suit est basé sur php. Si tu n'as pas d'environnement php installé sur ta machine (histoire de tester ce que tu fais), je te conseille une solution toute faite comme wamp ( http://www.wampserver.com) qui s'installe en 2 temps 3 mouvements et qui te permet de développer en local (et inclue également mysql).

Je te la fais en version archi-simplifiée, mais à ne pas utiliser tel quel car pas forcément très sécurisée, le but étant de te t'aider à apprendre ;) 

page du formulaire
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <form method="post" action="envoi.php">
  6. <input type="text" name="email" value="">
  7. <br/>
  8. <textarea name="message"></textarea>
  9. <br/><br/>
  10. <input type="reset" value=" Effacer "> <input type="submit" value=" Envoyer ">
  11. </form>
  12. </body>
  13. </html>


les données vont donc être envoyées sur la page envoi.php, c'est elle qui va traiter les données pour les envoyer

envoi.php
  1. <?php
  2. // ça c'est ton mail qui va recevoir les copies des messages.
  3. $mail_admin = "monmail@mondomaine.com";
  4.  
  5. // ça c'est vraiment une vérification basique, on se contente de vérifier si le champ correspond bien à un email, en partant du principe douteux que la variable $_POST['email'] existe bien
  6.  
  7. if( filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) == true )
  8. {
  9. $email = $_POST['email'];
  10. }
  11.  
  12. // là on vérifie si le message n'est pas vide
  13. if(trim($_POST['message']) != "")
  14. {
  15. $message = $_POST['message'];
  16. }
  17.  
  18. // si les deux variables message et email existent alors on envoie le mail
  19.  
  20. if(isset($email) && isset($message) )
  21. {
  22.  
  23. $sujet = "ceci est un sujet";
  24. $copie = "Cc: ".$mail_admin. "\r\n";
  25. /*
  26. note que si tu n'as pas paramêtré l'accès à un serveur de mail au moment de l'install de wamp,
  27. cette fonction ne marchera pas, mais à la limite rien ne t'empêche, une fois arrivé là, de tester
  28. ça sur le site de ton hébergeur
  29. */
  30. mail($email, $sujet, $message, $copie);
  31.  
  32. }
  33.  
  34.  
  35. ?>



Bon comme je te le disais plus haut, cette version n'est absolument pas sécurisée, et telle quel c'est un véritable moteur de spam ou de flood. Tu peux par exemple demander une authentification préalable à l'utilisateur ou mieux encore mettre en place une solution de captcha pour éviter qu'un robot joueur ne te pourrisse ton script.

voici quelques liens pour t'aider à avancer un peu :

Les références des fonctions utilisées ci-dessus

http://www.php.net/manual/fr/function.mail.php
http://www.php.net/manual/fr/function.isset.php
http://www.php.net/manual/fr/function.trim.php
http://www.php.net/manual/fr/function.filter-var.php

Quelques résultats google pour "bien débuter en php"
http://www.google.fr/#hl=fr&source=hp&q=debuter+en+php

Bon courage :) 
m
0
l
17 Décembre 2009 20:58:22

Eh bien je pense que tu peux utiliser quelque chose comme tout simplement la balise <FORM> pour ton formulaire.
Ta balise <FORM> aura l'argument ACTION, qui te permettra de définir l'envoi d'un mail.

<FORM METHOD=POST ACTION="mailto:xxxxxxx@xxxxxxx.xx">

<!-- le contenu de ton formulaire -->

<!-- La validation du formulaire -->
<INPUT type="submit" value="Envoyer">


</FORM>


Tout simplement...
m
0
l
17 Décembre 2009 21:59:48

Ah non pas tout simplement, ta solution n'est pas du tout correct !
m
0
l
18 Décembre 2009 09:26:54

En quoi n'est-elle pas correcte?
Personnellement, c'est comme ça que je m'y prendrai, alors au pire, donne nous une autre solution qui serait plus correcte...
m
0
l
18 Décembre 2009 09:59:06

Bah, vérifie par toi même ... tu vas effectuer une requête http de type POST vers un mailto soit une ressource externe ? ressource externe donc pas une requête http .... donc pourquoi POST ? si pas de requête http pourquoi un formulaire ? Dans le meilleur des cas, ton pseudo formulaire lancera le client mail comme un lien.
m
0
l
18 Décembre 2009 10:20:54

Que propose-tu comme solution dans ce cas?
m
0
l
18 Décembre 2009 10:41:18

La solution est au dessus, l'ensemble de l'exécution doit se faire coté serveur. Coté client, la seul et unique solution n'est pas "user-friendly" et est le goto. Après coté serveur, niveau solution il n'y a que l'embarra du choix ! Faut juste pas oublier la sécurité qui est oublié dans le script au dessus.
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS