> Tous les forums > Forum Forum des Webmasters
 formulaire mail avec plusieurs contacts
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Didou91
  Posté le 12/09/2004 @ 23:56 
Aller en bas de la page 
Petit astucien
Bonjour, Voici mon probleme... j'ai créé un formulaire mail pour mon site mais comme je suis nul en php (je comprend rien aux variables...) je ne sais pas comment recuperer les infos du formulaire et l'envoyer sur le bon contact... Le script: <html> <head> <title>Document sans nom</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <form name='email' action='traitement.php' method='post'> <table width="588" border="2"> <th width="160">CONTACT</th> <tr><td>Votre nom : </td> <td width="360"> <SELECT NAME="Mr"> <OPTION VALUE="mr">Mr <OPTION VALUE="mme">Mme <OPTION VALUE="melle">Melle </SELECT> <input name='nom' type='text' size='50'></td> </tr> <tr><td>Votre prénom : </td><td><input name='prenom' type='text' size='50'></td></tr> <tr><td>Votre adresse : </td><td><input name='adresse' type='text' size='50'></td></tr> <tr><td>Code postal : </td><td><input name='code postal' type='text' size='6'></td></tr> <tr><td>Ville : </td><td><input name='Ville' type='text' size='50'></td></tr> <tr><td>Votre email</td><td><input name='email' type='text' size='50'></td></tr> <tr> <td>Selectionnez un contact</td> <td><input name='sujet' type='radio' value='email 1' checked> email 1<br> <input name='sujet' type='radio' value='email 2'>email 2<br> <input name='sujet' type='radio' value='email 3'>email 3<br> <input name='sujet' type='radio' value='email 4'>email4 <br> </td></tr> <tr><td>Votre message</td><td><textarea name='texte' cols='50' rows='20'></textarea></td></tr> <tr><td><div align="center"> <input name='annuler' type='reset' value='Annuler'> </div></td><td> <div align="center"> <input name='soumettre' type='submit' value='Envoyer'> </div></td></tr> </table> </form> </body> </html> Comme vous l'aurez compris je voudrai recuperer les données a l'aide de "traitement.php" et envoyer le mail sur 1 de mes 4 adresses (email-1@monsite.com /email-2@monsite.com...etc.) Mais voila... comme je suis nul en php je ne sais pas comment faire mon fichier "traitement.php".... Je suis sur que cela peut vous parraitre simple mais pour moi c'est une grosse galère... Donc si quelqu'un veut bien m'aider, ca serai TRES cool. Merci d'avance...[smile]
Publicité
skettles
 Posté le 13/09/2004 à 00:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Bonsoir Didou91 !! En effet pour nous c'est tres simple... maintenant. Parce que quand il a fallu apprendre seul face aux tutos trouve sur le net, ca n'etait pas aussi... simple. Mais une chose apprise est retenue et on peut passer a l'etape suivante. Un conseil pour apprendre: tapes "tutorial php" dans Google et tu verras qu'il y a de quoi faire. Bon apprentissage Didou91 [clindoeil]
koala01
 Posté le 13/09/2004 à 01:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien
Salut, il y a deux manières de voir les choses: Soit, tu as (avec raison) "censuré" les adresse e-mail, et la valeur des boutons radion est chaque fois du type "toi@hebergeur.com" (c'est à dire, une adresse e-mail valide), soit tu as effectivement donné des valeur "arbitraires" sans rapport réel avec tes adresse E-mail à tes boutons radio. Il faut savoir que dans le premier cas, php ne prendra en compte que la valeur du bouton radion qui est coché... Il suffira donc de simplement récupérer la valeur de $sujet pour la transmettre au script d'envoi de mail... Dans le second cas,il existe une instruction très utile pour la vérification multiple de valeurs: switch (variable) { case "e-mail1": // liste d'instructions pour la valeur $adresse="toi1@hebergeur.com break; case "e-mail2": // liste d'instructions pour la valeur $adresse="toi2@hebergeur.com break; case "e-mail3": // liste d'instructions pour la valeur $adresse="toi3@hebergeur.com break; ... default: //instructions par défaut } Il existe enfin une possibilité d'utiliser les valeurs d'un tableau de manière à effectuer une boucle en injectant dans la boucle ces valeur: $tableau= array('valeur1','valeur2','valeur3','valeur4'); foreach($valeur as $tableau) { if($variable_formulaire==$valeur) { //liste d'instructions } } Tu comprendra que cette dernière solution fera systématiquement la boucle de l'ensemble des valeurs possibles et sera donc beaucoup plus lente à donner un résultat, meme s'il est parfois intéressant d'y avoir recours... skettles==>Personnellement, et bien que je sois d'accord avec le fait que l'on retient toujours mieux les solutions que l'on a trouvées tout seul, ta réponse a quand meme quel que chose de choquant... Si on ne lui donne pas ne serait-ce que les bases qui lui permettront d'arriver à une solution, il y a tellement d'instructions en PHP qu'il pourra chercher 107ans sans rien trouver. Maintenant, au moins, il sait ce qu'il doit chercher (switch...case/foreach/...)

Modifié par koala01 le 13/09/2004 01:13
skettles
 Posté le 13/09/2004 à 09:11 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
skettles==>Personnellement, et bien que je sois d'accord avec le fait que l'on retient toujours mieux les solutions que l'on a trouvées tout seul, ta réponse a quand meme quel que chose de choquant... >> Si on ne lui donne pas ne serait-ce que les bases qui lui permettront d'arriver à une solution, il y a tellement d'instructions en PHP qu'il pourra chercher 107ans sans rien trouver. >> Maintenant, au moins, il sait ce qu'il doit chercher (switch...case/foreach/...)
Salut Koala01 !! Eh ben dis donc ! T'es vachement pedagogue... Tu lui fait commencer le PHP par les instructions "switch... case - foreach". Il ne connait pas encore ce que c'est qu'une variable ni une instruction "print" ou "echo". Bravo ! Comme tu le dis si bien, "il y a tellement d'instructions en php...", alors si tu veux donner des conseils et ne pas critiquer ceux des autres, commence par expliquer le plus simple... plutot que le plus complique ! Tu vois moi aussi je sais critique (la critique est aisee, l'art est difficile !) @++ [confus] ------------------------------------------ Ce qui se concoit bien s'enonce clairement et les mots pour le dire vous viennent aisement [Boileau]
Didou91
 Posté le 13/09/2004 à 11:37 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Bonjour a vous deux. Avant tout je precise que j'ai lu pas mal de tuto mais je dois etre idiot car j'ai du mal a comprendre... (je comprend mieux avec du concret qu'avec du théorique) Ensuite j'ai trouvé quelques infos avec des formulaires mail deja pret que j'ai modifié pour l'adapter a mes besoins. En general on trouve des formulaires qui fonctionne avec 1 seule adresse mail... dans mon cas il existe 4 adresses differentes et je voudrais que les mails soient dirigés vers la bonne personne. Il est vrai que j'ai du mal a comprendre les variables, mais j'ai quand meme trouvé ca: <?php $sujet="email-1@monsite.com"; $from="From: $prenom $nom $adresse $code postal $ville<$email>\r\n"; $from.="Reply-To: $prenom $nom <$email>\n"; $from.="X-priority:3\n"; $texte="<html>"; $texte.="$texte"; $texte.="</html>"; $from.="MIME-Version: 1.0\r\n"; $from.="Content-Type: text/html"; if (mail($sujet,$texte,$from)) echo("<center><font color=green><br><br><br><h2>Formulaire envoyé ! Nous allons vous repondre rapidement. Merci!</h2></font><br><a href=../accueil.htm>Cliquez ici pour revenir à l'accueil</a></center>"); else 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>Vous pouvez essayer de nous contacter <a href="mailto:email-1@monsite.com">en cliquant ici</a>"); ?> Ca peux marcher mais avec 1 seule adresse email...mais je me repete... j'ai besoin de 4 adresses.... comme disais koala01: " j'ai "censuré" les adresse e-mail." je suis sur qu'il ne faut pas grand chose pour que ca fonctionne... je vais d'ailleurs essayer en suivant les conseils de Koala01... mais si je venais demander de l'aide c'est aussi parce que j'ai passé des heures entre les tuto et les tests sans succès... des fois il vaut mieux faire appel a des "pro" plutot que de se perdre dans des tests qui embrouillent plus qu'autre chose. en tout cas merci pour vos reponses.
koala01
 Posté le 13/09/2004 à 14:59 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien
skettles a écrit :
Salut Koala01 !! Eh ben dis donc ! T'es vachement pedagogue... Tu lui fait commencer le PHP par les instructions "switch... case - foreach". Il ne connait pas encore ce que c'est qu'une variable ni une instruction "print" ou "echo". Bravo ! Comme tu le dis si bien, "il y a tellement d'instructions en php...", alors si tu veux donner des conseils et ne pas critiquer ceux des autres, commence par expliquer le plus simple... plutot que le plus complique ! Tu vois moi aussi je sais critique (la critique est aisee, l'art est difficile !) @++ [confus] ------------------------------------------ Ce qui se concoit bien s'enonce clairement et les mots pour le dire vous viennent aisement [Boileau]
Heuu, tu remarqueras quand meme que je lui ai donné toutes les solutions possibles: 1
Soit, tu as (avec raison) "censuré" les adresse e-mail, et la valeur des boutons radion est chaque fois du type "toi@hebergeur.com" (c'est à dire, une adresse e-mail valide) (...) Il faut savoir que dans le premier cas, php ne prendra en compte que la valeur du bouton radion qui est coché... Il suffira donc de simplement récupérer la valeur de $sujet pour la transmettre au script d'envoi de mail...
2
soit tu as effectivement donné des valeur "arbitraires" sans rapport réel avec tes adresse E-mail à tes boutons radio. (...) Dans le second cas,il existe une instruction très utile pour la vérification multiple de valeurs: switch (variable) { case "e-mail1": // liste d'instructions pour la valeur $adresse="toi1@hebergeur.com break; case "e-mail2": // liste d'instructions pour la valeur $adresse="toi2@hebergeur.com break; case "e-mail3": // liste d'instructions pour la valeur $adresse="toi3@hebergeur.com break; ... default: //instructions par défaut }
3: pour certaines solutions (qui auraient pu etre, par exemple, l'utilisation de noms de boutons radion différents)
Il existe enfin une possibilité d'utiliser les valeurs d'un tableau de manière à effectuer une boucle en injectant dans la boucle ces valeur: $tableau= array('valeur1','valeur2','valeur3','valeur4'); foreach($valeur as $tableau) { if($variable_formulaire==$valeur) { //liste d'instructions } }
Alors, oui, ma maxime reste d'application, la preuve, j'ai compris correctement sa demande, et j'ai concu correctement les éléments de réponse envisageables... S'il est vrai que pour etre complet, j'aurais du rajouter que PHP, en fonction des réglages, permet la récupération des champs (au sens large) d'un formulaire soit directement sous la forme de $nom_du_champs avec comme valeur le contenu introduit par l'utilisateur, soit sous la forme de $variable=$HTTP_GET_VARS[nom_du_champs] ou $HTTP_POST_VARS[nom_du_champs] en fonciton de la méthode utilisée pour le formulaire (respectivement get et post, qui l'eu cru), il n'en demeure pas moins que, généralement, un forum est fait pour apporter une aide, si possible efficace, aux personnes qui le cotoient... Une réponse telle que tu en as donnée n'apporte strictement rien et a meme tendance à plutot dégouter les gens qui ont posé la question. Il est vrai, sur ce point, que je ne suis pas vraiment un grand partisan des liens à gogo lorsqu'il s'agit de donner une explicaiton (sauf cas exceptionnel). Tu conviendra avec moi que ta remarque n'apporte aucune explication (d'ailleurs, elle n'apporte strictement rien, à part le fait d'augmenter ton nombre de message de 1) et n'est absolument pas constructive... Ce sont là les raisons qui m'ont poussé à te faire la remarque sur laquelle j'ai quand meme pris la peine de justifier le fait que je te la faisais.
skettles
 Posté le 13/09/2004 à 15:40 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Ben maintenant Didou91 tu as tout ce qu'il faut pour bosser. Koala01 t'as fourni les armes, y'a plus qu'a aller te battre... Quand au fait de savoir si mes reponses font augmenter de 1 mon score dans ce forum, alors il y en a qui n'ont rien compris. @tchao
koala01
 Posté le 13/09/2004 à 16:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien
skettles a écrit :
Ben maintenant Didou91 tu as tout ce qu'il faut pour bosser. Koala01 t'as fourni les armes, y'a plus qu'a aller te battre... Quand au fait de savoir si mes reponses font augmenter de 1 mon score dans ce forum, alors il y en a qui n'ont rien compris. @tchao
Je te rassure tout de suite, je me moque bien du nombre de réponses que tu postes (toi ou n'importe qui d'autre) pour ne rien dire, ni des raisons qui t'incitent à le faire... Cependant, je persistes dans l'optique que ce genre de réponse, et surtout la manière dont elle est formulée, déssert plus ce forum qu'autre chose...
Didou91
 Posté le 16/09/2004 à 10:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Eh bien voila, j'ai enfin reussi le traitement de mon formulaire... j'ai pas mal galeré... mais ca marche[smile] Je voulais simplement remercier KOALA01 de son aide [happy]
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Sujets relatifs
Pas de mail recu avec formulaire html et php
Help Malcom : formulaire mail php avec copie caché
formulaire avec adresse mail à saisir
Formulaire d'inscription avec confirmation mail
problème formulaire par mail avec FREE
Formulaire qui ne fonctionne pas avec Joomla
Envoi checkbox par mail dans formulaire php
Utilité d'un captcha avec un formulaire
mail envoyer souci avec des if et des else
Formulaire php avec upload de 2 fichiers. Formail
Plus de sujets relatifs à formulaire mail avec plusieurs contacts
 > Tous les forums > Forum Forum des Webmasters