Script php

rosiguy -  
barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour
voici mon code pour un formulaire de contact en html

<div align=center> 
<form method="post" action=formmail.php>
<input type=hidden name=subject value=formmail> 
<table> 
<tr><td>Votre Email:</td> 
<td><input type=text name=From size=30></td></tr> 
<tr><td>Sujet ( Service demandé/Renseignement/etc....):</td> 
<td><input type=text name=subject size=30></td></tr> 
<tr><td colspan=2>Votre message:<br> 
<textarea COLS=50 ROWS=6 name=message></textarea> 
</td></tr> 
</table> 
<br> <input type=submit value=Envoyer> - 
<input type=reset value=Annuler> 
</form> 
</div>


Je vous pries de m'aider à trouver le script php pour rediriger le contenu de mon formulaire vers une adresse électronique (***@***).Car je ne sais pas grande chose en php. Merci d'avance

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

3 réponses

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Bonjour,

    Tout est expliqué ici :

    https://openclassrooms.com/courses/e-mail-envoyer-un-e-mail-en-php

    Bonne soirée.
    0
    1. rosiguy
       
      Merci. Mais c'est très compliqué pour moi. J'aimerai juste avoir le code php qui repondra à ma question.
      0
  2. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Vers quelle adresse électronique ? Il faut que je sache pour l'intégrer dans le code.

    Quel est le nom de fichier du formulaire ? index.html ?
    0
  3. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Voilà le script :

    <?php
    
    $mail = 'toto@ton_domaine'; // Déclaration de l'adresse du webmaster
    
    
    // on vérifie la validité du message
    
    $message = htmlspecialchars($_POST['message']);
    
    if(empty($message))
    {
       header("Location: index.html");
       exit;
    }
    
    
    // on vérifie la validité du sujet
    
    $subject = htmlspecialchars($_POST['subject']);
    
    if(empty($subject))
    {
       header("Location: index.html");
       exit;
    }
    
    
    // on vérifie la validité de l'adresse
    
    $courriel = htmlspecialchars($_POST['From']);
    
    if(empty($courriel))
    {
       header("Location: index.html");
       exit;
    }
    
    $courriel = strtolower($courriel);
    
    
    
    // on envoie un e-mail au webmaster
    
    if (!preg_match("#^[a-z0-9._-]+@(outlook|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.
    
    $add = $_SERVER['REMOTE_ADDR'];
    
    $message_txt = "Courriel de l'expéditeur : [ $courriel ]  Adresse ip de l'expéditeur : [ $add ]  Message : $message";
    
    $message_html = "<html><head></head><body>Courriel de l'expéditeur : [ $courriel ]  Adresse ip de l'expéditeur : [ $add ]<br /><br />Message de l'expéditeur : <br /><br />$message</body></html>";
    
    //==========
    
    
    
    //=====Création de la boundary
    
    $boundary = "-----=".md5(rand());
    
    //==========
    
    
    
    //=====Définition du sujet.
    
    $sujet = "[ $subject ]";
    
    //=========
    
    
    
    //=====Création du header de l'e-mail.
    
    $header = "From: \"Formulaire de contact\"<$mail>".$passage_ligne;
    
    $header.= "Reply-to: \"Visiteur\" <$courriel>".$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=\"UTF-8\"".$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);
    
    //==========
    
    header("Location: index.html");
    exit;
    
    ?>
    0
    1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
       
      Il faudra juste remplacer l'adresse mail à la deuxième ligne du script par la tienne.
      0