Formulaire avec envoi automatique de mail

Bonjour a tous je suis entrain de créer un site web ou les membres doivent remplir un formulaire et ensuite doivent recevoir automatiquement un email lorsqu'ils valident le formulaire. comment dois je ecrire la fonction php qui leur enverra directement le mail?

merci pour votre aide

1 réponse

  1. Modérateur
    Bonjour,

    Comme ceci :
    https://www.commentcamarche.net/faq/117-php-fonction-mail

    Cela utilise la fonction mail de php
    https://www.php.net/manual/fr/function.mail.php

    Bien entendu, il faut que le serveur mail soit configuré sur le serveur qui héberge ton application.
    Si tu es en LOCAL sur ton ordi, tu auras du paramétrage à faire dans ton php.ini et besoin éventuellement d'une application comme fakesendmail ( que tu trouveras sur le net sans trop de soucis).

    Tu as aussi la possibilité de passer par une class php : PHPMAILER.
    là aussi tu trouveras de nombreux exemples/tutos sur le net à ce sujet.

    0
    1. merci jordan! j'essaie et je vous revient. merci encore pour hier.
      0
    2. j'ai essayé d'écrire mon code mais apparemment il y a une erreur je ne comprend pas trop. peux tu m'aider?
      voici le code:

      $mail = $mail; // Déclaration de l'adresse de destination.
      if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $mail)) // On filtre les serveurs qui rencontrent des bogues.
      {$passage_ligne = "\r\n";} else { $passage_ligne = "\n";}
      
      //=====Déclaration des messages au format texte et au format HTML.
      $message_txt = "Salut!, Merci à vous de vous êtes enrégistré.";
      $message_html = "<html><head></head><body><b>Salut!</b>, Merci à vous de vous êtes enrégistré.</body></html>";
      //==========
       
      //=====Création de la boundary
      $boundary = "-----=".md5(rand());
      //==========
       
      //=====Définition du sujet.
      $sujet = "Hey mon ami !";
      //=========
       
      //=====Création du header de l'e-mail.
      $header = "From: \"Admin\"<***@***d>".$passage_ligne;
      $header.= "Reply-to: \"Admin\"<***@***d>".$passage_ligne;
      $header.= "MIME-Version: 1.0".$passage_ligne;
      $header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne;
      //==========
       
      //=====Création du message.
      $message = $passage_ligne."--".$boundary.$passage_ligne;
      //=====Ajout du message au format texte.
      $message.= "Content-Type: text/plain; charset=\"ISO-8859-1\"".$passage_ligne;
      $message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
      $message.= $passage_ligne.$message_txt.$passage_ligne;
      //==========
      $message.= $passage_ligne."--".$boundary.$passage_ligne;
      //=====Ajout du message au format HTML
      $message.= "Content-Type: text/html; charset=\"ISO-8859-1\"".$passage_ligne;
      $message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
      $message.= $passage_ligne.$message_html.$passage_ligne;
      //==========
      $message.= $passage_ligne."--".$boundary."--".$passage_ligne;
      $message.= $passage_ligne."--".$boundary."--".$passage_ligne;
      //==========
       
      //=====Envoi de l'e-mail.
      mail($mail,$sujet,$message,$header);?>
      
      0
    3. Modérateur
      Bonjour,
      Commence par nous dire quelle est l'erreur.
      0
    4. c'est même ça mon pb je ne sais même pas là ou se situe le pb. ça aaffiche juste un tableau orange en bas de la page. Comment faire pour voir plus clair dans les erreurs?
      0