TUTO PHP - Formulaire de contact


Je vous ai montré la semaine dernière comment envoyer des mails en PHP... Je vous propose donc aujourd'hui un petit cas pratique avec la réalisation d'un petit formulaire de contact :-)

  • Code complet du formulaire de contact :
<?php
if(isset($_POST['mailform'])) {
   if(!empty($_POST['nom']) AND !empty($_POST['mail']) AND !empty($_POST['message'])) {
      $header="MIME-Version: 1.0\r\n";
      $header.='From:"nom_d'expediteur"<votre@mail.com>'."\n";
      $header.='Content-Type:text/html; charset="uft-8"'."\n";
      $header.='Content-Transfer-Encoding: 8bit';
      $message='
      <html>
         <body>
            <div align="center">
               <img src="http://www.primfx.com/mailing/banniere.png"/>
               <br />
               <u>Nom de l\'expéditeur :</u>'.$_POST['nom'].'<br />
               <u>Mail de l\'expéditeur :</u>'.$_POST['mail'].'<br />
               <br />
               '.nl2br($_POST['message']).'
               <br />
               <img src="http://www.primfx.com/mailing/separation.png"/>
            </div>
         </body>
      </html>
      ';
      mail("mail@destinataire.com", "Sujet du message", $message, $header);
      $msg="Votre message a bien été envoyé !";
   } else {
      $msg="Tous les champs doivent être complétés !";
   }
}
?>
<html>
   <head>
      <meta charset="utf-8" />
   </head>
   <body>
      <h2>Formulaire de contact !</h2>
      <form method="POST" action="">
         <input type="text" name="nom" placeholder="Votre nom" value="<?php if(isset($_POST['nom'])) { echo $_POST['nom']; } ?>" /><br /><br />
         <input type="email" name="mail" placeholder="Votre email" value="<?php if(isset($_POST['mail'])) { echo $_POST['mail']; } ?>" /><br /><br />
         <textarea name="message" placeholder="Votre message"><?php if(isset($_POST['message'])) { echo $_POST['message']; } ?></textarea><br /><br />
         <input type="submit" value="Envoyer !" name="mailform"/>
      </form>
      <?php if(isset($msg)) {
         echo $msg;
      }
      ?>
   </body>
</html>

A propos de l'auteur

PrimFX
PrimFX

Salut tout le monde ! Je m'appelle Boris, j'ai 18 ans et je suis passionné d'informatique et de technologie. Je partage cette passion à travers mes vidéos que tu peux retrouver sur YouTube sous le nom de PrimFX ou bien sur ce site bien sûr (tutoriels de programmation (HTML, CSS, PHP), gameplays, vlogs high-tech...). @+

A voir aussi

8 Commentaires

POSTER UN COMMENTAIRE

Vous devez être connecté pour pouvoir poster un commentaire...

Pas encore de compte ? Créez-en un ici !



  • Photo de profil de paco

    paco

    02 November 2015 à 17:16

    Cool le tuto!

    Et si je souhaite envoyé un mail à plusieurs contacts à la fois avec une pièce jointe, comment faire?

    merci!!!

  • Photo de profil de mencisv

    mencisv

    26 February 2016 à 18:06

    Bonjour,

    J'ai récupérer le fichier formulaire_de_contact.php . Quand je l'ouvre avec Notepad++ et que je l’exécute soit dans firefox, chrome ou IE cela ne fonctionne pas.....

    J'ai essayé de voir ou était le bug en regardant plusieurs fois la vidéo je ne vois pas, et mes connaissances en php sont trop limitées pour faire cette analyse. Pouvez vous contrôler de votre côté

  • Photo de profil de Kalmando

    Kalmando

    27 February 2016 à 19:35

    @mencisv à tu installé le fake-sendmail ?

  • Photo de profil de mencisv

    mencisv

    28 February 2016 à 09:42

    Bonjour,

    En fait il n'y a pas de problème, j'en suis d'ailleurs confus, je n'étais tout simplement pas sous environnement php donc le code ne pouvait pas être interprété.... je débute mais je progresse

  • Photo de profil de R00T

    R00T

    27 September 2016 à 17:51

    Bonjour, super tuto !

    Malheureusement je rencontre un "petit" problème lors de l'envoi du mail. Après avoir cliqué sur envoyer le mail, ça recharge la page, m'affiche votre mail a bien été envoyer mais tout en haut de la page s'affiche une message d'erreur php :/



    Function Location

    1 0.0016 250080 {main}( ) ...\contact.php:0

    2 0.0017 251040 mail ( ) ...\contact.php:22

  • Photo de profil de TobiasBonifay

    TobiasBonifay

    22 February 2017 à 14:23

    "Vous avez atteint la limite de codes visibles sans compte Premium. Pour afficher les codes de tutoriels sans limite, essayez les comptes Premium !"

    Je me suis inscrit aujourd'hui, et je n'ai encore vu aucun code....

  • Photo de profil de Dinars

    Dinars

    16 May 2017 à 13:12

    @paco sur http://a-pellegrini.developpez.com/tutoriels/php/mail/ tu trouveras comment faire

  • Photo de profil de juliebdx

    juliebdx

    19 May 2017 à 21:08

    Merci beaucoup !!!!!!!!!!!!!!!!!!



    nb: il manque un \ après :

    nom_d'

    $header.='From:"nom_d'expediteur"<votre@mail.com>'."\n";