Créer un formulaire simple

Répondre
Carnyx
Carnyx
Déconnecté
Salut,

Voilà quelques jours que j'essaie en vais de mettre un formulaire en ligne mais je n'y arrive pas.

J'en ai trouvé un simple ici.

Il faudrait juste que je puisse y ajouter l'adresse email. Comment faire ?

merci
Carnyx
Carnyx
Déconnecté
J'ai modifié le code html :

nom_du_fichier
  1. <form action="mailto:monnom@fai.fr" method="post"
  2. enctype="text/plain" name="mail"> <br>
  3. <br>Votre nom:<br>
  4. <input name="votre nom">
  5. <br>Votre adresse email<br>
  6. <input adresse="votre adresse email">
  7. <br>Votre message:<br>
  8.  
  9. <textarea name="commentaire" rows="2" cols="30"></textarea><br>
  10. <input type="submit" value="envoyer">
  11. </form> 
Keika
Keika
Déconnecté
Le PHP --> C'est dur !
Salut,

modifie ton input:
<input adresse="votre adresse email">

par

<input name="email" value="votre adresse email" />
Carnyx
Carnyx
Déconnecté
Ok merci, c'est fait mais j'ai ce message d'erreur maintenant :

enctype="text/plain" name="mail">
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Il ne faut pas modifier le code de l'exemple fourni sur ton site, il fonctionne parfaitement.

En fait un formulaire avec dans l'action un mailto, cela va ouvrir ton client mail pour envoyer un mail à cette personne, un peu comme un lien de type mailto.
Mais ca n'envoie pas de mail en PHP.
Carnyx
Carnyx
Déconnecté
merci

J'ai trouvé un autre code :

Le formulaire :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Formulaire</title>
  6. <style type="text/css"></style>
  7. </head>
  8.  
  9. <body>
  10.  
  11. <form method="post" action="index.php?id=envoi">
  12. <p>Votre nom:<br>
  13. <input type="text" name="nom" size=30 />
  14. </p>
  15. <p>Votre adresse E-Mail:<br>
  16. <input type="text" name="email" size=30 />
  17. </p>
  18. <p>Message:<br>
  19. <textarea name="message" cols=30 rows=5></textarea>
  20. </p>
  21. <input type="submit" value="Envoyer" />
  22. </form>
  23.  
  24. </body>
  25. </html> 


le traitement php :
  1.  
  2. <?php
  3. $to = 'blabla@yahoo.fr';  
  4. $subject = 'Contact Askara :';  
  5. $email = $_POST['email'];  
  6.  
  7. $message = $_POST['message'];  
  8. $message_ok = wordwrap($message,70);  
  9.  
  10. $headers = 'From:'. $email . '\nReturn-Path:' .$email. '\n\n';  
  11.  
  12. email($to, $subject, $message_ok, $headers);  
  13.  
  14. echo "Votre message a bien été envoyé ";  
  15. ?> 


Avec ce code, je n'ai pas de message d'erreur, mais je ne reçois pas de message non plus. smiley
vengeur002
vengeur002
Déconnecté
La prog c est pas sorcier suffis juste de s'y coller ^^
Salut

tiens essai avec ca ;)

  1.  
  2.  
  3. <?php
  4.  
  5. function email_OK ($email) {  
  6. $test_mail=eregi('^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)+$',$email);  
  7. if ($test_mail) {  
  8. list ($login, $domaine) = split ("@", $email,2);  
  9. if (checkdnsrr ($domaine, "MX")) {  
  10. return TRUE;  
  11. }  
  12. else {  
  13. return FALSE;  
  14. }  
  15. }  
  16. else {  
  17. return FALSE;  
  18. }  
  19. }  
  20.  
  21.  
  22.  
  23. include('./inc/config.php');  
  24.  
  25.  
  26. if (isset($_POST['Send']) && $_POST['Send'] == 'Send') {  
  27. // on teste l'existence de nos variables. On teste également si elles ne sont pas vides  
  28. if ((isset($_POST['mail']) && !empty($_POST['mail'])) 
  29.    && (isset($_POST['objet']) && !empty($_POST['objet'])) 
  30.    && (isset($_POST['message']) && !empty($_POST['message']))) 
  31.    { 
  32.    // on déclare les paramètres du mail  
  33.  
  34. $destinataire = "blabla@yahoo.fr";  
  35. $expediteur = $_POST['mail'];  
  36.  
  37. $objet = $_POST['objet'];  
  38. $contenu = '<html><body>'.nl2br($_POST['message']).'</html></body>'; 
  39.    $adresse = $_POST['mail']; 
  40.    if (email_OK ($adresse)) {  
  41.  
  42. //on envoie le mail  
  43. mail($destinataire, $objet, $contenu, "From:$expediteur\r\nReply-To:$expediteur\r\nContent-Type: text/html; charset=\"iso-8859-1\"\r\n");  
  44.  
  45. $erreur = 'Votre email a été envoyé';  
  46. }  
  47. else {  
  48. $erreur = 'L\'adresse email que vous avez indiqué n\'est pas valide ';  
  49. }  
  50. }  
  51. else {  
  52. $erreur = 'Tous les champs doivent etre complétés ';  
  53. }  
  54. }  
  55.  
  56. ?>
  57.          
  58. <?php echo'<strong>'.$erreur.'</strong>';?><br />
  59. <div align="center"><strong><img src="image/puce_verte.png" alt="" width="8" height="7" />
  60. </div>
  61. <br />
  62. <br />
  63.  
  64. </p>
  65. <form name="Mail" method="post" action="#"><table width="100%" border="0" cellspacing="0" cellpadding="0">
  66. <tr>
  67. <td width="65%"><font color="red">*</font> Objet / Object :</td>
  68. </tr>
  69. <tr>
  70. <td><input name="objet" type="text" size="70"></td>
  71. </tr>
  72. <tr>
  73. <td><font color="red">* </font>Votre email / Your email : </td>
  74. </tr>
  75. <tr>
  76. <td>
  77. <input name="mail" type="text" size="40"> </td>
  78. </tr>
  79. <tr>
  80. <td><font color="red">*</font> Message : </td>
  81. </tr>
  82. <tr>
  83. <td><textarea name="message" cols="60" rows="8"></textarea></td>
  84. </tr>
  85. <tr>
  86. <td>&nbsp;</td>
  87. </tr>
  88.  
  89. <tr>
  90. <td><input type="submit" name="Envoyer" value="Send"></td>
  91. <td width="8%" rowspan="2">&nbsp;</td>
  92. </tr>
  93. <tr>
  94. <td>&nbsp;</td>
  95. </tr>
  96. </table>
  97.    
  98.     </form>
  99.  
  100.  


si tu veux pouvoir changer le destinataire, il te suffis d'ajouter un champs destinataire, et modifier la variable $destinataire

  1.  
  2. <?php
  3. $destinataire= $_POST['destinataire'];  
  4. ?>
  5.  

ps : vérifie egalement la forme du mail avec la fonction email_OK() de la globule ;)

++
Carnyx
Carnyx
Déconnecté
salut et grand merci pour ton aide,

J'ai ce message d'erreur avec le traitement.php que tu m'a donné :

nom_du_fichier
  1. Warning: include() [function.include.php]: Unable to access ./ 


C'est quoi le "function.include.php" ?
Carnyx
Carnyx
Déconnecté
Je viens de tester que la fonctiion mail marche bien sur le serveur et c'est ok. Je l'ai fait avec ce code :
nom_du_fichier
  1. <?php
  2. $destinataire="blabla@yahoo.fr";  
  3. $expediteur="blabla@yahoo.fr";  
  4. $titre="titre du message";  
  5. $corps="corps du message";  
  6. $headers="From: " . $expediteur . "\nReturn-Path: " . $expediteur . "\n";  
  7. $email=mail($destinataire,$titre,$corps,$headers);  
  8. if($email)  
  9. echo "Mail envoyé";  
  10. else  
  11. echo "Mail non envoyé";  
  12. ?>
  13.  


C'est déjà un pas en avant.
Carnyx
Carnyx
Déconnecté
Ca y estai réussit à en faire marcher un,. Ne me demandé pas comment j'ai fait ?
christine
christine
Déconnecté
bonjour

et si je veux faire une copie , disons que si je veux l envoyer à un autre destianataire je l inclus comment dans la variable $destinataire?

Merci
Keika
Keika
Déconnecté
Le PHP --> C'est dur !
fonction mail

Regardes ca, il suffit de mettre des headers...
Répondre
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Php - Breizh Blog