IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Souci formulaire contact php avec captcha


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut Souci formulaire contact php avec captcha
    Bonjour,

    Je fait appel à vous car je pète un câble lol.

    Voila j'ai trouvé un système de captcha je les mis sur mon formulaire de contact et rien ne marche ni alerte ni envoie d'email. Donc je fait appel à vous car je suis dessus depuis 3 jours sans trouvé pourquoi il ne fonctionne pas je vous mais le code originale puis mon code à moi.

    Code originale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    <?
    session_start(); //ouverture la session pour conserver le captcha
     
    if (!isset($_POST["action"])) $_POST["action"]="";
    if (!isset($_POST["nom"])) $_POST["nom"]=""; //déclaration de chaque élément de formulaire
    if (!isset($_POST["email"])) $_POST["email"]=""; 
    if (!isset($_POST["message"])) $_POST["message"]="";
    if (!isset($_POST["captcha"])) $_POST["captcha"]="";
    $msg="";
    $flag=0;
     
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && strtolower($_POST["captcha"])==$_SESSION["phrase"]){
        $destinataire="ygmar@yahoo.com"; //mettez ici votre adresse e-mail en tant que webmaster du site
        $objet="Formulaire de contact du site web"; // titre du mail automatique
        $message_envoi=" Vous avez reçu une demande de contact \n";
        $message_envoi.="Voici le contenu : \n"; //déclaration du contenu du message
        $message_envoi.="nom du contact :".$_POST["nom"]." \n";
        $message_envoi.="email du contact :".$_POST["email"]." \n";
        $message_envoi.="message du contact :".$_POST["message"]." \n"; //rajouter apres cette ligne les autres éléments du formulaire
        mail($destinataire,$objet,$message_envoi); // envoi du message
     
        $flag=1; //si tout est OK, on passe cette variable à 1
    }
    else{
        $msg="<i>remplissez au moins le nom et le texte de vérification</i>";
    }
     
    // gestion de l'affichage du captcha
    $monfichier=fopen("captcha.txt","r");
    $i=0;
    while(!feof($monfichier)){
        $montab[$i]=fgets($monfichier,4096);
        $i++;
    }
    fclose($monfichier);
    shuffle($montab);
    $elem0=explode(";",$montab[0]);
    $elem1=explode(";",$montab[1]);
    $elem2=explode(";",$montab[2]);
    $elem3=explode(";",$montab[3]);
    $elem4=explode(";",$montab[4]);
    $phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    $_SESSION["phrase"]=$phrase; 
    $img="<div class='img'><img src='img_captcha/".$elem0[1]."' /><img src='img_captcha/".$elem1[1]."' /><img src='img_captcha/".$elem2[1]."' /><img src='img_captcha/".$elem3[1]."' /><img src='img_captcha/".$elem4[1]."' /></div>";
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Formulaire de contact</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <style type="text/css">
    /* feuille de style pour le formulaire, changez ici ce que vous désirez */
    form{width:500px;font-family:verdana;font-size:10px;}
    legend{font-weight:bold;} 
    .img{border:1px solid black;width:125px;}
    </style>
    </head>
    <body>
    <? 
    if($flag==1){
     // quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
     echo "merci pour votre message";
    }
    else {
    ?>
    <form method="post" name="contact" action="<?php echo $PHP_SELF ?>">
    <fieldset>
        <legend>Formulaire de Contact</legend>
        <p><? echo $msg ?></p>
        <p><label>Nom : </label><input type="text" name="nom" value="<?php echo $_POST["nom"] ?>" /></p>
        <p><label>Email : </label><input type="text" name="email" value="<?php echo $_POST["email"] ?>"/></p>
        <!-- vous pouvez rajouter des éléments de formulaires ici -->
        <p><label>Message : </label><textarea name="message" cols=40 rows=8><?php echo $_POST["message"] ?></textarea></p>
        <p><? echo $img ?><label>Recopiez le texte de l'image :</label><input type="text" name="captcha" size="5"/></p>
    </fieldset>
    <input type="submit" name="action" value="Envoyer" />
    </form>
    <? } ?>
    </body>
    </html>


    Et ici mon code qui ne fonctionne pas :/

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    <?
    session_start(); //ouverture la session pour conserver le captcha
     
    if (!isset($_POST["action"])) $_POST["action"]="";
    if (!isset($_POST["sexe"])) $_POST["sexe"]="";
    if (!isset($_POST["nom"])) $_POST["nom"]=""; //déclaration de chaque élément de formulaire
    if (!isset($_POST["email"])) $_POST["email"]="";
    if (!isset($_POST["sujet"])) $_POST["sujet"]="";
    if (!isset($_POST["message"])) $_POST["message"]="";
    if (!isset($_POST["captcha"])) $_POST["captcha"]="";
    $msg="";
    $flag=0;
     
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && strtolower($_POST["captcha"])==$_SESSION["phrase"]){
        $destinataire="Monemail@live.fr"; //mettez ici votre adresse e-mail en tant que webmaster du site
        $objet="Contact de la page"; // titre du mail automatique
        $message_envoi=" Vous avez reçu une demande de contact \n";
        $message_envoi.="Voici le contenu : \n"; //déclaration du contenu du message
        $message_envoi.="Sexe :".$_POST["sexe"]." \n";
        $message_envoi.="nom du contact :".$_POST["nom"]." \n";
        $message_envoi.="email du contact :".$_POST["email"]." \n";
        $message_envoi.="sujet du contact :".$_POST["sujet"]." \n";
        $message_envoi.="message du contact :".$_POST["message"]." \n"; //rajouter apres cette ligne les autres éléments du formulaire
        mail($destinataire,$objet,$message_envoi); // envoi du message
     
        $flag=1; //si tout est OK, on passe cette variable à 1
    }
    else{
        $msg="<i>Tout les champs sont obligatoir (*)</i>";
    }
     
    // gestion de l'affichage du captcha
    $monfichier=fopen("captcha.txt","r");
    $i=0;
    while(!feof($monfichier)){
        $montab[$i]=fgets($monfichier,4096);
        $i++;
    }
    fclose($monfichier);
    shuffle($montab);
    $elem0=explode(";",$montab[0]);
    $elem1=explode(";",$montab[1]);
    $elem2=explode(";",$montab[2]);
    $elem3=explode(";",$montab[3]);
    $elem4=explode(";",$montab[4]);
    $phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    $_SESSION["phrase"]=$phrase; 
    $img="<div class='img'><img src='img_captcha/".$elem0[1]."' /><img src='img_captcha/".$elem1[1]."' /><img src='img_captcha/".$elem2[1]."' /><img src='img_captcha/".$elem3[1]."' /><img src='img_captcha/".$elem4[1]."' /></div>";
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css">
    <!--
    body {
        background-image: url();
        background-color: #CCCCCC;
    }
    .Style6 {
        color: #008000;
        font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style></head>
     
    <body>
    <? 
    if($flag==1){
     // quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
     echo "merci pour votre message";
    }
    else {
    ?>
    <div id="page">
    <!--debut banniere -->
      <div id="baniere"><img src="images/bnr.jpg" alt="bannière" width="955" height="150" longdesc="http://www.Monlien.fr" /></div>
      <!--Fin banniere -->
      <!--debut menu -->
      <div id="menu">
        <ul>
          <li><a href="#">Nous contacter</a></li>
          <li><a href="#">Inscrivez-vous</a></li>
          <li><a href="#">Nos tarifs</a></li>
          <li><a href="#">Nos services</a></li>    
          <li><a href="index.php">Accueil</a></li>    
        </ul>
      </div>
      <!--fin menu -->
      <!--debut menu gauche -->
      <div id="gauche">
        <ul>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
        </ul>
      </div>
      <!--fin menu gauche -->
      <!--debut centre -->
      <div id="centre">
        <form method="post" name="contact" action="<?php echo $PHP_SELF ?>" >
          <table>
            <tr>
              <td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
            </tr>
            <tr>
              <td colspan="2">S'il vous plaît, prenez le temps de remplir tous les champs portant un   astérisque <span class="Style1">*</span>,
              vous nous aiderez à traiter votre demande le plus rapidement   possible. Merci. </td>
            </tr>
            <tr>
              <td colspan="2">&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Vous êtes:</strong> <span class="Style1">*</span></td>
              <td><select id="sexe" name="sexe">
                <option selected="selected" value="<?php echo $_POST["sexe"] ?>">Choisissez</option>
                <option value="Madame">Madame</option>
                <option value="Mademoiselle">Mademoiselle</option>
                <option value="Monsieur">Monsieur</option>
              </select></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Nom, Prénom:</strong> <span class="Style1">*</span></td>
              <td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $_POST["nom"] ?>" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
     
            <tr>
              <td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $_POST["email"] ?>" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Sujet</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $_POST["sujet"] ?>" /></td>
            </tr>
            <tr>
              <td colspan="2"><div align="center">Votre message : <span class="Style1">*</span> <br />
                  <textarea name="message" cols=50 rows=8><?php echo $_POST["message"] ?></textarea>
              </div></td>
            </tr>
     
            <tr>
              <td><strong>Entrée le code</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="captcha" size="5"/></td>
            </tr>
            <tr>
              <td><strong>Code a introduire</strong> : </td>
              <td><? echo $img ?></td>
            </tr>
    <tr></tr>
          </table>
          <div align="center">
            <input name="action" type="submit" value="Envoyer" />
          -
          <input name="reset" type="reset" value="Annuler" />
          </div>
        </form><? } ?>
      </div>
      <!--fin centre -->
      <!--debut pied page -->
      <div id="pied"> 
        <div align="center">Copyright © 2010 </div>
      </div>
      <!--fin pied page -->
    </div>
     
    </body>
    </html>


    Merci par avance,

    Cordialement Stéphane.

  2. #2
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    En vérifiant l'existence de la variable de $_SESSION['phrase']
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    isset($_SESSION["phrase"])
    avant la comparaison avec le code $_POST["captcha"]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){
    ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Bonjour Eric2a,

    Merci de ta réponse rapide mais ça marche toujours pas :/

    Comme tu le dit ici :

    Citation Envoyé par Eric2a Voir le message
    Salut,

    En vérifiant l'existence de la variable de $_SESSION['phrase']
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    isset($_SESSION["phrase"])
    avant la comparaison avec le code $_POST["captcha"]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){
    ?
    J'ai changé ma ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && strtolower($_POST["captcha"])==$_SESSION["phrase"]){
    Par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){
    Et toujours aucune action ni alerte comme quoi mes champs ne son pas remplis et je ne reçois aucun mail dans ma boite mail (ni dans les indésirable)

    Cordialement Stéphane.

  4. #4
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Peux-tu tenter à nouveau avec ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){? 
    	$expediteur='toncompte@tonsite.com';
    	$destinataire="Monemail@live.fr";  //mettez ici votre adresse e-mail en tant que webmaster du site
    	$objet="Contact de la page"; // titre du mail automatique
    	$eof="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi =" Vous avez reçu une demande de contact \n";
    	$message_envoi.="Voici le contenu : \n"; //déclaration du contenu du message
    	$message_envoi.="Sexe :".$_POST["sexe"]." \n";
    	$message_envoi.="nom du contact :".$_POST["nom"]." \n";
    	$message_envoi.="email du contact :".$_POST["email"]." \n";
    	$message_envoi.="sujet du contact :".$_POST["sujet"]." \n";
    	$message_envoi.="message du contact :".$_POST["message"]." \n"; //rajouter apres cette ligne les autres éléments du formulaire
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	$flag=(@mail($destinataire,$objet,$message_envoi,$header)):1:0;
    	if(!$flag)$msg='<i>Une erreur est apparue lors de l\'envoi de l\'email</i>';   
    }
    else{
    	$msg="<i>Tout les champs sont obligatoires (*)</i>";
    }
    en prenant soin de personnaliser la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $expediteur='toncompte@tonsite.com';
    PS : <?php est préférable à <?

    Edit : J'avais oublié la ligne... $eof="\n";

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Franchement encore merci Eric2a mais malheureusement cela ne marche toujours pas

    Citation Envoyé par Eric2a Voir le message
    Peux-tu tenter à nouveau avec ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){? 
    	$expediteur='toncompte@tonsite.com';
    	$destinataire="Monemail@live.fr";  //mettez ici votre adresse e-mail en tant que webmaster du site
    	$objet="Contact de la page"; // titre du mail automatique
    	$eof="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi =" Vous avez reçu une demande de contact \n";
    	$message_envoi.="Voici le contenu : \n"; //déclaration du contenu du message
    	$message_envoi.="Sexe :".$_POST["sexe"]." \n";
    	$message_envoi.="nom du contact :".$_POST["nom"]." \n";
    	$message_envoi.="email du contact :".$_POST["email"]." \n";
    	$message_envoi.="sujet du contact :".$_POST["sujet"]." \n";
    	$message_envoi.="message du contact :".$_POST["message"]." \n"; //rajouter après cette ligne les autres éléments du formulaire
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	$flag=(@mail($destinataire,$objet,$message_envoi,$header)):1:0;
    	if(!$flag)$msg='<i>Une erreur est apparue lors de l\'envoi de l\'email</i>';   
    }
    else{
    	$msg="<i>Tout les champs sont obligatoires (*)</i>";
    }
    En prenant soin de personnaliser la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $expediteur='toncompte@tonsite.com';
    PS : <?php est préférable à <?

    Edit : J'avais oublié la ligne... $eof="\n";

    Quand je remplace ton code par le miens il me dit :

    Parse error: syntax error, unexpected '?' in /home/web/www/contact.php on line 14 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){?
    et si j'enlève le ? il me mais cette erreur:

    Parse error: syntax error, unexpected ':' in /home/web/www/contact.php on line 37 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $flag=(@mail($destinataire,$objet,$message_envoi,$header)):1:0;
    et comme indiquer plus haut tu me demande de changer cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $expediteur='toncompte@tonsite.com';
    J'ai donc mis mon login @ mon lien (web@Mondomaine.net) et comme ça ne marchait pas j'ai testé avec mon Email Blabla@live.fr

    Et par la même occasion j'ai replacé tout mes <? en <?php si j'ai bien compris car je ne connais rien en PHP et autre code j'apprends petit à petit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    <?php
    session_start(); //ouverture la session pour conserver le captcha
     
    if (!isset($_POST["action"])) $_POST["action"]="";
    if (!isset($_POST["sexe"])) $_POST["sexe"]="";
    if (!isset($_POST["nom"])) $_POST["nom"]=""; //déclaration de chaque élément de formulaire
    if (!isset($_POST["email"])) $_POST["email"]="";
    if (!isset($_POST["sujet"])) $_POST["sujet"]="";
    if (!isset($_POST["message"])) $_POST["message"]="";
    if (!isset($_POST["captcha"])) $_POST["captcha"]="";
    $msg="";
    $flag=0;
     
    if ($_POST["action"]=="Envoyer" && $_POST["email"]!="" && isset($_SESSION["phrase"]) && strtolower($_POST["captcha"])==$_SESSION["phrase"]){? 
        $expediteur='web@MonDomaine.net';
        $destinataire="Blablabla@live.fr";  //mettez ici votre adresse e-mail en tant que webmaster du site
        $objet="Contact de la page"; // titre du mail automatique
     
        $header ='From: '.$expediteur.$eol;
        $header.='Return-Path: '.$expediteur.$eol;
        $header.='Reply-To: '.$expediteur.$eol;
        $header.='X-Priority: 3'.$eol;
        $header.='X-Mailer: PHP/'.phpversion().$eol;
        $header.='MIME-Version: 1.0'.$eol;
        $header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
        $header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
        $message_envoi =" Vous avez reçu une demande de contact \n";
        $message_envoi.="Voici le contenu : \n"; //déclaration du contenu du message
        $message_envoi.="Sexe :".$_POST["sexe"]." \n";
        $message_envoi.="nom du contact :".$_POST["nom"]." \n";
        $message_envoi.="email du contact :".$_POST["email"]." \n";
        $message_envoi.="sujet du contact :".$_POST["sujet"]." \n";
        $message_envoi.="message du contact :".$_POST["message"]." \n"; //rajouter apres cette ligne les autres éléments du formulaire
        $message_envoi=chunk_split(base64_encode($message_envoi));
        // envoi du message
        $flag=(@mail($destinataire,$objet,$message_envoi,$header)):1:0;
        if(!$flag)$msg='<i>Une erreur est apparue lors de l\'envoi de l\'email</i>';   
    }
    else{
        $msg="<i>Tout les champs sont obligatoires (*)</i>";
    }
     
    // gestion de l'affichage du captcha
    $monfichier=fopen("captcha.txt","r");
    $i=0;
    while(!feof($monfichier)){
        $montab[$i]=fgets($monfichier,4096);
        $i++;
    }
    fclose($monfichier);
    shuffle($montab);
    $elem0=explode(";",$montab[0]);
    $elem1=explode(";",$montab[1]);
    $elem2=explode(";",$montab[2]);
    $elem3=explode(";",$montab[3]);
    $elem4=explode(";",$montab[4]);
    $phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    $_SESSION["phrase"]=$phrase; 
    $img="<div class='img'><img src='img_captcha/".$elem0[1]."' /><img src='img_captcha/".$elem1[1]."' /><img src='img_captcha/".$elem2[1]."' /><img src='img_captcha/".$elem3[1]."' /><img src='img_captcha/".$elem4[1]."' /></div>";
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css">
    <!--
    body {
        background-image: url();
        background-color: #CCCCCC;
    }
    .Style6 {
        color: #008000;
        font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style></head>
     
    <body>
    <?php 
    if($flag==1){
     // quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
     echo "merci pour votre message";
    }
    else {
    ?>
    <div id="page">
    <!--debut banniere -->
      <div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.Lien.net" /></div>
      <!--Fin banniere -->
      <!--debut menu -->
      <div id="menu">
        <ul>
          <li><a href="#">Nous contacter</a></li>
          <li><a href="#">Inscrivez-vous</a></li>
          <li><a href="#">Nos tarifs</a></li>
          <li><a href="#">Nos services</a></li>    
          <li><a href="index.php">Accueil</a></li>    
        </ul>
      </div>
      <!--fin menu -->
      <!--debut menu gauche -->
      <div id="gauche">
        <ul>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
        </ul>
      </div>
      <!--fin menu gauche -->
      <!--debut centre -->
      <div id="centre">
        <form method="post" name="contact" action="<?php echo $PHP_SELF ?>" >
          <table>
            <tr>
              <td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
            </tr>
            <tr>
              <td colspan="2">S'il vous pla&icirc;t, prenez le temps de remplir tous les champs portant un   ast&eacute;risque <span class="Style1">*</span>,
              vous nous aiderez &agrave; traiter votre demande le plus rapidement   possible. Merci. </td>
            </tr>
            <tr>
              <td colspan="2">&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
              <td><select id="sexe" name="sexe">
                <option selected="selected" value="<?php echo $_POST["sexe"] ?>">Choisissez</option>
                <option value="Madame">Madame</option>
                <option value="Mademoiselle">Mademoiselle</option>
                <option value="Monsieur">Monsieur</option>
              </select></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
              <td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $_POST["nom"] ?>" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
     
            <tr>
              <td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $_POST["email"] ?>" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Sujet</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $_POST["sujet"] ?>" /></td>
            </tr>
            <tr>
              <td colspan="2"><div align="center">Votre message : <span class="Style1">*</span> <br />
                  <textarea name="message" cols=50 rows=8><?php echo $_POST["message"] ?></textarea>
              </div></td>
            </tr>
     
            <tr>
              <td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="captcha" size="5"/></td>
            </tr>
            <tr>
              <td><strong>Code a introduire</strong> : </td>
              <td><?php echo $img ?></td>
            </tr>
    <tr></tr>
          </table>
          <div align="center">
            <input name="action" type="submit" value="Envoyer" />
          -
          <input name="reset" type="reset" value="Annuler" />
          </div>
        </form><?php } ?>
      </div>
      <!--fin centre -->
      <!--debut pied page -->
      <div id="pied"> 
        <div align="center">Copyright &copy; 2010.</div>
      </div>
      <!--fin pied page -->
    </div>
     
    </body>
    </html>
    Cordialement Stéphane.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Re !!!
    Je me demande s’il ne manque pas un fichier pour que le script marche

    Donc au cas ou que j'ai loupé un truc voici le lien ou se trouve le script que j'ai trouvé Lien du script dans la partie 2 Récupération et description du script

    Récupérez le script ici. Comme d’habitude,...............
    Si ça peut nous aidé

    Cordialement Stéphane.

  7. #7
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Désolé pour le caractère "?". Il aurait dû se situer dans la ligne...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $flag=(@mail($destinataire,$objet,$message_envoi,$header))?1:0;
    Comment j'ai fais ça... Mystère.

    Tu peut faire aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(@mail($destinataire,$objet,$message_envoi,$header))$flag=1;
    if(!$flag)$msg='<i>Une erreur est apparue lors de l\'envoi de l\'email</i>';
    Sinon, il n'est pas nécessaire d'avoir d'autres fichiers.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Ok les erreurs sont bien réparés mais cela ne fonctionne toujours pas :s Piouffff lol mais je ne d'espère pas. (Aucune alerte ni mail même pas en indésirable lol)

    Citation Envoyé par Eric2a Voir le message
    Désolé pour le caractère "?". Il aurait dû se situer dans la ligne...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $flag=(@mail($destinataire,$objet,$message_envoi,$header))?1:0;
    Comment j'ai fais ça... Mystère.

    Tu peux faire aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(@mail($destinataire,$objet,$message_envoi,$header))$flag=1;
    if(!$flag)$msg='<i>Une erreur est apparue lors de l\'envoi de l\'email</i>';
    Sinon, il n'est pas nécessaire d'avoir d'autres fichiers.

    Cordialement Stéphane.

  9. #9
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    La gestion d'envoi d'email fonctionne avec le code ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    <?php
    session_start(); //ouverture la session pour conserver le captcha
     
    $action	=(isset($_POST['action']))?trim(rawurldecode($_POST['action'])):'';
    $sexe	=(isset($_POST['sexe']))?trim(rawurldecode($_POST['sexe'])):'';
    $nom	=(isset($_POST['nom']))?trim(rawurldecode($_POST['nom'])):'';
    $email	=(isset($_POST['email']))?trim(rawurldecode($_POST['email'])):'';
    $sujet	=(isset($_POST['sujet']))?trim(rawurldecode($_POST['sujet'])):'';
    $message=(isset($_POST['message']))?trim(rawurldecode($_POST['message'])):'';
    $captcha=(isset($_POST['captcha']))?trim(rawurldecode($_POST['captcha'])):'';
     
    $sexe=htmlspecialchars($sexe,ENT_QUOTES);
    $nom=htmlspecialchars($nom,ENT_QUOTES);
    $email=htmlspecialchars($email,ENT_QUOTES);
    $sujet=htmlspecialchars($sujet,ENT_QUOTES);
    $message=htmlspecialchars($message,ENT_QUOTES);
     
    $msg='';
    $flag=0;
     
    if($action=='Envoyer' && $email!='' && isset($_SESSION['phrase']) && strtolower($captcha==$_SESSION['phrase'])){
    	$expediteur	='web@MonDomaine.net';
    	$destinataire	='Blablabla@live.fr';  //mettez ici votre adresse e-mail en tant que webmaster du site
    	$objet="Contact de la page"; // titre du mail automatique
    	$eol="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi ="<p>Vous avez reçu une demande de contact<br />Voici le contenu :</p>\n"; //déclaration du contenu du message
    	$message_envoi.='<pre>Sexe : '.$sexe." \n";
    	$message_envoi.='Nom du contact : '.$nom."\n";
    	$message_envoi.='email du contact : '.$email."\n";
    	$message_envoi.='Sujet du contact : '.$sujet."\n";
    	$message_envoi.="Message du contact :\n".$message."\n</pre>\n"; //rajouter apres cette ligne les autres éléments du formulaire
     
    	$message_envoi="<html><head><title>Mail</title></head><body>\n".$message_envoi."</body></html>";
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	if (@mail($destinataire,$objet,$message_envoi,$header))
    		$flag=1;
    	else
    		$msg='Une erreur est apparue lors de l\'envoi de l\'email';
    }
    else
    	$msg='Tout les champs sont obligatoires (*)';
     
    // gestion de l'affichage du captcha
    if(!$flag){
    	if(($monfichier=@fopen('captcha.txt','r'))!==false){
    		$i=0;
    		while(!@feof($monfichier)){
    			$montab[$i]=fgets($monfichier,4096);
    			$i++;
    		}
    		@fclose($monfichier);
    		shuffle($montab);
    		$elem0=explode(';',$montab[0]);
    		$elem1=explode(';',$montab[1]);
    		$elem2=explode(';',$montab[2]);
    		$elem3=explode(';',$montab[3]);
    		$elem4=explode(';',$montab[4]);
    		$phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    		$_SESSION['phrase']=$phrase;
    		$img='<div class="img"><img src="img_captcha/'.$elem0[1].'" /><img src="img_captcha/'.$elem1[1].'" /><img src="img_captcha/'.$elem2[1].' /><img src="img_captcha/'.$elem3[1].'" /><img src="img_captcha/'.$elem4[1].'" /></div>';
    	}
    	else
    		$msg='Erreur de lecture';
    }
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css"><!--
    body {
    	background-image: url();
    	background-color: #CCCCCC;
    }
    .Style6 {
    	color: #008000;
    	font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style>
    </head>
     
    <body>
    <div id="page">
    	<!--debut banniere -->
    	<div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.Lien.net" /></div>
    	<!--Fin banniere -->
    	<!--debut menu -->
    	<div id="menu">
    		<ul>
    			<li><a href="#">Nous contacter</a></li>
    			<li><a href="#">Inscrivez-vous</a></li>
    			<li><a href="#">Nos tarifs</a></li>
    			<li><a href="#">Nos services</a></li>
    			<li><a href="index.php">Accueil</a></li>
    		</ul>
    	</div>
    	<!--fin menu -->
    	<!--debut menu gauche -->
    	<div id="gauche">
    		<ul>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			</ul>
    	</div>
    	<!--fin menu gauche -->
    	<!--debut centre -->
    	<div id="centre">
    <?php
    if($flag==1){
    	// quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
    	echo "<p>merci pour votre message</p>\n";
    }
    else {
    	if($msg!=='')echo "\t\t<p><strong>".$msg."</strong></p>\n";
    ?>
    		<form method="post" name="contact" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" >
    			<table>
    				<tr>
    					<td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
    				</tr>
    				<tr>
    					<td colspan="2">S'il vous pla&icirc;t, prenez le temps de remplir tous les champs portant un   ast&eacute;risque <span class="Style1">*</span>,
    					vous nous aiderez &agrave; traiter votre demande le plus rapidement   possible. Merci.
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
    					<td>
    						<select id="sexe" name="sexe">
    							<option selected="selected" value="<?php echo $sexe; ?>">Choisissez</option>
    							<option value="Madame">Madame</option>
    							<option value="Mademoiselle">Mademoiselle</option>
    							<option value="Monsieur">Monsieur</option>
    						</select>
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
    					<td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $nom; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $email; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Sujet</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $sujet; ?>" /></td>
    				</tr>
    				<tr>
    					<td colspan="2">
    						<div align="center">
    							Votre message : <span class="Style1">*</span><br />
    							<textarea name="message" cols=50 rows=8><?php echo $message; ?></textarea>
    						</div>
    					</td>
    				</tr>
    				<tr>
    					<td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="captcha" size="5"/></td>
    				</tr>
    				<tr>
    					<td><strong>Code a introduire</strong> : </td>
    					<td><?php echo $img; ?></td>
    				</tr>
    			</table>
    			<div align="center">
    				<input name="action" type="submit" value="Envoyer" />
    				-
    				<input name="reset" type="reset" value="Annuler" />
    			</div>
    		</form><?php } ?>
    	</div>
    	<!--fin centre -->
    	<!--debut pied page -->
    	<div id="pied">
    		<div align="center">Copyright &copy; 2010.</div>
    	</div>
    	<!--fin pied page -->
    </div>
     
    </body>
    </html>
    NB : Pour le test, j'ai placé la gestion du captcha en commentaire et utilisé "$phrase='test'; $_SESSION['phrase']=$phrase;" à la place.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Re !!!
    J'ai placé ton code dans contact.php j'ai modifié :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $expediteur    ='web@MonDomaine.net';
        $destinataire    ='Blablabla@live.fr';  //mettez ici votre adresse e-mail en tant que webmaster du site
    Pour : $expediteur ='web@MonDomaine.net'; (j'ai mis web@Nomdemonlien.net)

    et pour:
    $destinataire ='Blablabla@live.fr'; (j'ai mis MonMail@live.fr)

    cela ne fonctionne toujours pas chez moi de plus qu’il y a que 3 caractères (chiffre et lettre) dans le captcha :/ j'ai testé avec un formulaire de base sans captcha et il fonctionne (pour info Testé savoir si je reçois les mail) et supprimer. et toujours aucune mail ni alerte :/
    Par contre je n'ai pas compris pour:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NB : Pour le test, j'ai placé la gestion du captcha en commentaire et utilisé "$phrase='test'; $_SESSION['phrase']=$phrase;" à la place.
    avec toute mes excuses de t'importuner avec ce problème de code

    Citation Envoyé par Eric2a Voir le message
    La gestion d'envoi d'email fonctionne avec le code ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    <?php
    session_start(); //ouverture la session pour conserver le captcha
     
    $action	=(isset($_POST['action']))?trim(rawurldecode($_POST['action'])):'';
    $sexe	=(isset($_POST['sexe']))?trim(rawurldecode($_POST['sexe'])):'';
    $nom	=(isset($_POST['nom']))?trim(rawurldecode($_POST['nom'])):'';
    $email	=(isset($_POST['email']))?trim(rawurldecode($_POST['email'])):'';
    $sujet	=(isset($_POST['sujet']))?trim(rawurldecode($_POST['sujet'])):'';
    $message=(isset($_POST['message']))?trim(rawurldecode($_POST['message'])):'';
    $captcha=(isset($_POST['captcha']))?trim(rawurldecode($_POST['captcha'])):'';
     
    $sexe=htmlspecialchars($sexe,ENT_QUOTES);
    $nom=htmlspecialchars($nom,ENT_QUOTES);
    $email=htmlspecialchars($email,ENT_QUOTES);
    $sujet=htmlspecialchars($sujet,ENT_QUOTES);
    $message=htmlspecialchars($message,ENT_QUOTES);
     
    $msg='';
    $flag=0;
     
    if($action=='Envoyer' && $email!='' && isset($_SESSION['phrase']) && strtolower($captcha==$_SESSION['phrase'])){
    	$expediteur	='web@MonDomaine.net';
    	$destinataire	='Blablabla@live.fr';  //mettez ici votre adresse e-mail en tant que webmaster du site
    	$objet="Contact de la page"; // titre du mail automatique
    	$eol="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi ="<p>Vous avez reçu une demande de contact<br />Voici le contenu :</p>\n"; //déclaration du contenu du message
    	$message_envoi.='<pre>Sexe : '.$sexe." \n";
    	$message_envoi.='Nom du contact : '.$nom."\n";
    	$message_envoi.='email du contact : '.$email."\n";
    	$message_envoi.='Sujet du contact : '.$sujet."\n";
    	$message_envoi.="Message du contact :\n".$message."\n</pre>\n"; //rajouter apres cette ligne les autres éléments du formulaire
     
    	$message_envoi="<html><head><title>Mail</title></head><body>\n".$message_envoi."</body></html>";
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	if (@mail($destinataire,$objet,$message_envoi,$header))
    		$flag=1;
    	else
    		$msg='Une erreur est apparue lors de l\'envoi de l\'email';
    }
    else
    	$msg='Tout les champs sont obligatoires (*)';
     
    // gestion de l'affichage du captcha
    if(!$flag){
    	if(($monfichier=@fopen('captcha.txt','r'))!==false){
    		$i=0;
    		while(!@feof($monfichier)){
    			$montab[$i]=fgets($monfichier,4096);
    			$i++;
    		}
    		@fclose($monfichier);
    		shuffle($montab);
    		$elem0=explode(';',$montab[0]);
    		$elem1=explode(';',$montab[1]);
    		$elem2=explode(';',$montab[2]);
    		$elem3=explode(';',$montab[3]);
    		$elem4=explode(';',$montab[4]);
    		$phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    		$_SESSION['phrase']=$phrase;
    		$img='<div class="img"><img src="img_captcha/'.$elem0[1].'" /><img src="img_captcha/'.$elem1[1].'" /><img src="img_captcha/'.$elem2[1].' /><img src="img_captcha/'.$elem3[1].'" /><img src="img_captcha/'.$elem4[1].'" /></div>';
    	}
    	else
    		$msg='Erreur de lecture';
    }
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css"><!--
    body {
    	background-image: url();
    	background-color: #CCCCCC;
    }
    .Style6 {
    	color: #008000;
    	font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style>
    </head>
     
    <body>
    <div id="page">
    	<!--debut banniere -->
    	<div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.Lien.net" /></div>
    	<!--Fin banniere -->
    	<!--debut menu -->
    	<div id="menu">
    		<ul>
    			<li><a href="#">Nous contacter</a></li>
    			<li><a href="#">Inscrivez-vous</a></li>
    			<li><a href="#">Nos tarifs</a></li>
    			<li><a href="#">Nos services</a></li>
    			<li><a href="index.php">Accueil</a></li>
    		</ul>
    	</div>
    	<!--fin menu -->
    	<!--debut menu gauche -->
    	<div id="gauche">
    		<ul>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			</ul>
    	</div>
    	<!--fin menu gauche -->
    	<!--debut centre -->
    	<div id="centre">
    <?php
    if($flag==1){
    	// quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
    	echo "<p>merci pour votre message</p>\n";
    }
    else {
    	if($msg!=='')echo "\t\t<p><strong>".$msg."</strong></p>\n";
    ?>
    		<form method="post" name="contact" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" >
    			<table>
    				<tr>
    					<td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
    				</tr>
    				<tr>
    					<td colspan="2">S'il vous pla&icirc;t, prenez le temps de remplir tous les champs portant un   ast&eacute;risque <span class="Style1">*</span>,
    					vous nous aiderez &agrave; traiter votre demande le plus rapidement   possible. Merci.
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
    					<td>
    						<select id="sexe" name="sexe">
    							<option selected="selected" value="<?php echo $sexe; ?>">Choisissez</option>
    							<option value="Madame">Madame</option>
    							<option value="Mademoiselle">Mademoiselle</option>
    							<option value="Monsieur">Monsieur</option>
    						</select>
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
    					<td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $nom; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $email; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Sujet</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $sujet; ?>" /></td>
    				</tr>
    				<tr>
    					<td colspan="2">
    						<div align="center">
    							Votre message : <span class="Style1">*</span><br />
    							<textarea name="message" cols=50 rows=8><?php echo $message; ?></textarea>
    						</div>
    					</td>
    				</tr>
    				<tr>
    					<td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="captcha" size="5"/></td>
    				</tr>
    				<tr>
    					<td><strong>Code a introduire</strong> : </td>
    					<td><?php echo $img; ?></td>
    				</tr>
    			</table>
    			<div align="center">
    				<input name="action" type="submit" value="Envoyer" />
    				-
    				<input name="reset" type="reset" value="Annuler" />
    			</div>
    		</form><?php } ?>
    	</div>
    	<!--fin centre -->
    	<!--debut pied page -->
    	<div id="pied">
    		<div align="center">Copyright &copy; 2010.</div>
    	</div>
    	<!--fin pied page -->
    </div>
     
    </body>
    </html>
    NB : Pour le test, j'ai placé la gestion du captcha en commentaire et utilisé "$phrase='test'; $_SESSION['phrase']=$phrase;" à la place.
    Cordialement Stéphane.

  11. #11
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Citation Envoyé par snip74
    par contre je n'est pas compris pour:
    ... j'ai placé la gestion du captcha en commentaire et utilisé "$phrase='test'; $_SESSION['phrase']=$phrase;" à la place.
    En l'absence de captcha.txt le code de génération du code de sécurité n'est pas éxecuté. Je donne une valeur par défaut ("test") à $_SESSION['phrase'].
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // gestion de l'affichage du captcha
    	/*
    		Génération du code ignorée
    		Le problême ne viendrait-il pas de cette partie du code ?
    	*/
    	$phrase='test';
    	$_SESSION['phrase']=$phrase; // Code de sécurité pour le test
    
    //fin de gestion du captcha

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Alors le fichier captcha.txt est bien sur mon FTP à la racine, tous les lettres et chiffres sont bien présents sur la page avec ton code mais il y a n’a plus que 3 captcha au lieu de 6 ^^. Voir Lien Test (site en construction) et ne fonctionne pas pour mes alerte et envoie de mail.
    et comme je suis un débutant je ne pourrait pas te dire d'où vient l'erreur lol tu risque de m'apprendre plus toi, que moi je ne pourrais t'apprendre :bete:

    A la racine de mon FTP j'ai :

    Un dossier : img_captcha (avec toute les images du catcha)
    Un fichier txt : captcha.txt et mon Fichier contact.php

    après sérieux si chez toi ça marche je ne comprends vraiment pas pourquoi chez moi ça veut pas, alors qu’avec un formulaire basic ça marche :/ et en prime ça m'affiche des caractères de type ///////// quand je remplie le sujet par exemple

    Citation Envoyé par Eric2a Voir le message
    En l'absence de captcha.txt le code de génération du code de sécurité n'est pas exécuté. Je donne une valeur par défaut ("test") à $_SESSION['phrase'].
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // gestion de l'affichage du captcha
    	/*
    		Génération du code ignorée
    		Le problême ne viendrait-il pas de cette partie du code ?
    	*/
    	$phrase='test';
    	$_SESSION['phrase']=$phrase; // Code de sécurité pour le test
    
    //fin de gestion du captcha
    Cordialement Stéphane.

  13. #13
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Citation Envoyé par snip74
    il n'y en a plus que 3 captcha au lieu de 6
    Mea culpa... J'avais oublié un guillemet dans la ligne ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $img='<div class="img"><img src="img_captcha/'.$elem0[1].'" /><img src="img_captcha/'.$elem1[1].'" /><img src="img_captcha/'.$elem2[1].'" /><img src="img_captcha/'.$elem3[1].'" /><img src="img_captcha/'.$elem4[1].'" /></div>';
    Citation Envoyé par snip74
    ça m'affiche des caractères de type /////////
    Bizarre...

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Lol bah ça arrive même au meilleur d'entre nous !!!
    donc la mes caractères sont tous afficher merci

    Par contre ça marche toujours pas
    Tu veux tester avec mon login et passe FTP ? Si oui contact moi en MP que je te donne mon login et passe ftp car dans tout les cas mon formulaire et incomplet + ne fonctionne pas et manque le tel, adresse, code postale, et surtout les vérifications email valide etc... Et temps que sa marche pas je ne peux pas continuer lol déjà 3 jours dessus avec aujourd'hui je me suis frappé le quatrième jour avec un mal de crane Mdr

    Citation Envoyé par Eric2a Voir le message
    Mea culpa... J'avais oublié un guillemet dans la ligne ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $img='<div class="img"><img src="img_captcha/'.$elem0[1].'" /><img src="img_captcha/'.$elem1[1].'" /><img src="img_captcha/'.$elem2[1].'" /><img src="img_captcha/'.$elem3[1].'" /><img src="img_captcha/'.$elem4[1].'" /></div>';
    Bizarre...
    Cordialement Stéphane.

  15. #15
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Je suis lourd ce soir... J'ai encore bugée sur la ligne corrigée ci-dessous (manquait une parenthèse fermante)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($action=='Envoyer' && $email!='' && isset($_SESSION['phrase']) && strtolower($captcha)==$_SESSION['phrase']){
    Concernant les anti-slashs qui peuvent apparaître, cela est dû aux guillemets magiques activés sur ton hébergement.
    Pour corriger le problème, il faut placer les lignes - pas bugées - ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if(@get_magic_quotes_gpc()){
    	$action=stripslashes($action);
    	$sexe=stripslashes($sexe);
    	$nom=stripslashes($nom);
    	$email=stripslashes($email);
    	$sujet=stripslashes($sujet);
    	$message=stripslashes($message);
    	$captcha=stripslashes($captcha);
    }
    Après la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $captcha=(isset($_POST['captcha']))?trim(rawurldecode($_POST['captcha'])):'';
    Ensuite, je te propose d'utiliser le code ci-dessous pour le captcha
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    // gestion de l'affichage du captcha
    $img='';
    if(!$flag){
    	$filename=dirname(__FILE__).DIRECTORY_SEPARATOR.'captcha.txt';
    	if(($montab=@file($filename))!==false){
    		shuffle($montab);
    		$elem0=explode(';',$montab[0]);
    		$elem1=explode(';',$montab[1]);
    		$elem2=explode(';',$montab[2]);
    		$elem3=explode(';',$montab[3]);
    		$elem4=explode(';',$montab[4]);
    		$phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    		$_SESSION['phrase']=$phrase;
    		$img='<div class="img"><img src="img_captcha/'.$elem0[1].'" /><img src="img_captcha/'.$elem1[1].'" /><img src="img_captcha/'.$elem2[1].'" /><img src="img_captcha/'.$elem3[1].'" /><img src="img_captcha/'.$elem4[1].'" /></div>';
    	}
    	else
    		$msg='Erreur de lecture';
    }
    //fin de gestion du captcha
    Ça fonctionne sur Free. Ça devrait être bon chez toi aussi.

    Citation Envoyé par snip74
    Tu veut Testé avec mon login et passe FTP ?
    Inutile, on va y arriver.

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Bonjour Eric2a,
    Mes excuses mais je suis tombé comme une masse je pensait tenir et finir le code mais ce n’est pas le cas lol.

    Alors je me suis perdu dans le code donc se matin j'ai tout repris depuis le début lol et cela ne fonctionne toujours pas.

    Un truc que je n'ai pas su placé c'est ce morceau de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if(@get_magic_quotes_gpc()){
    	$action=stripslashes($action);
    	$sexe=stripslashes($sexe);
    	$nom=stripslashes($nom);
    	$email=stripslashes($email);
    	$sujet=stripslashes($sujet);
    	$message=stripslashes($message);
    	$captcha=stripslashes($captcha);
    }
    Il n'est pas placé car je ne c'est pas où le mettre

    J'ai bien corrigé le reste du moins je pense lol car je suis pas sur à vérifier si possible car je suis un poil perdu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    <?php
    session_start(); //ouverture la session pour conserver le captcha
     
    $action	=(isset($_POST['action']))?trim(rawurldecode($_POST['action'])):'';
    $sexe	=(isset($_POST['sexe']))?trim(rawurldecode($_POST['sexe'])):'';
    $nom	=(isset($_POST['nom']))?trim(rawurldecode($_POST['nom'])):'';
    $email	=(isset($_POST['email']))?trim(rawurldecode($_POST['email'])):'';
    $sujet	=(isset($_POST['sujet']))?trim(rawurldecode($_POST['sujet'])):'';
    $message=(isset($_POST['message']))?trim(rawurldecode($_POST['message'])):'';
    $captcha=(isset($_POST['captcha']))?trim(rawurldecode($_POST['captcha'])):'';
     
    $sexe=htmlspecialchars($sexe,ENT_QUOTES);
    $nom=htmlspecialchars($nom,ENT_QUOTES);
    $email=htmlspecialchars($email,ENT_QUOTES);
    $sujet=htmlspecialchars($sujet,ENT_QUOTES);
    $message=htmlspecialchars($message,ENT_QUOTES);
     
    $msg='';
    $flag=0;
     
    if($action=='Envoyer' && $email!='' && isset($_SESSION['phrase']) && strtolower($captcha)==$_SESSION['phrase']){
    	$expediteur	='web@hostingozone.net;
    	$destinataire	='Blablabla@live.fr';  //mettez ici votre adresse e-mail en tant que webmaster du site
    	$objet="Contact de la page"; // titre du mail automatique
    	$eol="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi ="<p>Vous avez reçu une demande de contact<br />Voici le contenu :</p>\n"; //déclaration du contenu du message
    	$message_envoi.='<pre>Sexe : '.$sexe." \n";
    	$message_envoi.='Nom du contact : '.$nom."\n";
    	$message_envoi.='email du contact : '.$email."\n";
    	$message_envoi.='Sujet du contact : '.$sujet."\n";
    	$message_envoi.="Message du contact :\n".$message."\n</pre>\n"; //rajouter apres cette ligne les autres éléments du formulaire
     
    	$message_envoi="<html><head><title>Mail</title></head><body>\n".$message_envoi."</body></html>";
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	if (@mail($destinataire,$objet,$message_envoi,$header))
    		$flag=1;
    	else
    		$msg='Une erreur est apparue lors de l\'envoi de l\'email';
    }
    else
    	$msg='Tout les champs sont obligatoires (*)';
     
    // gestion de l'affichage du captcha
    $img='';
    if(!$flag){
    	$filename=dirname(__FILE__).DIRECTORY_SEPARATOR.'captcha.txt';
    	if(($montab=@file($filename))!==false){
    		shuffle($montab);
    		$elem0=explode(';',$montab[0]);
    		$elem1=explode(';',$montab[1]);
    		$elem2=explode(';',$montab[2]);
    		$elem3=explode(';',$montab[3]);
    		$elem4=explode(';',$montab[4]);
    		$phrase=$elem0[0].$elem1[0].$elem2[0].$elem3[0].$elem4[0];
    		$_SESSION['phrase']=$phrase;
    		$img='<div class="img"><img src="img_captcha/'.$elem0[1].'" /><img src="img_captcha/'.$elem1[1].'" /><img src="img_captcha/'.$elem2[1].'" /><img src="img_captcha/'.$elem3[1].'" /><img src="img_captcha/'.$elem4[1].'" /></div>';
    	}
    	else
    		$msg='Erreur de lecture';
    }
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css"><!--
    body {
    	background-image: url();
    	background-color: #CCCCCC;
    }
    .Style6 {
    	color: #008000;
    	font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style>
    </head>
     
    <body>
    <div id="page">
    	<!--debut banniere -->
    	<div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.Lien.net" /></div>
    	<!--Fin banniere -->
    	<!--debut menu -->
    	<div id="menu">
    		<ul>
    			<li><a href="#">Nous contacter</a></li>
    			<li><a href="#">Inscrivez-vous</a></li>
    			<li><a href="#">Nos tarifs</a></li>
    			<li><a href="#">Nos services</a></li>
    			<li><a href="index.php">Accueil</a></li>
    		</ul>
    	</div>
    	<!--fin menu -->
    	<!--debut menu gauche -->
    	<div id="gauche">
    		<ul>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			</ul>
    	</div>
    	<!--fin menu gauche -->
    	<!--debut centre -->
    	<div id="centre">
    <?php
    if($flag==1){
    	// quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
    	echo "<p>merci pour votre message</p>\n";
    }
    else {
    	if($msg!=='')echo "\t\t<p><strong>".$msg."</strong></p>\n";
    ?>
    		<form method="post" name="contact" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" >
    			<table>
    				<tr>
    					<td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
    				</tr>
    				<tr>
    					<td colspan="2">S'il vous pla&icirc;t, prenez le temps de remplir tous les champs portant un   ast&eacute;risque <span class="Style1">*</span>,
    					vous nous aiderez &agrave; traiter votre demande le plus rapidement   possible. Merci.
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
    					<td>
    						<select id="sexe" name="sexe">
    							<option selected="selected" value="<?php echo $sexe; ?>">Choisissez</option>
    							<option value="Madame">Madame</option>
    							<option value="Mademoiselle">Mademoiselle</option>
    							<option value="Monsieur">Monsieur</option>
    						</select>
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
    					<td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $nom; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $email; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Sujet</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $sujet; ?>" /></td>
    				</tr>
    				<tr>
    					<td colspan="2">
    						<div align="center">
    							Votre message : <span class="Style1">*</span><br />
    							<textarea name="message" cols=50 rows=8><?php echo $message; ?></textarea>
    						</div>
    					</td>
    				</tr>
    				<tr>
    					<td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="captcha" size="5"/></td>
    				</tr>
    				<tr>
    					<td><strong>Code a introduire</strong> : </td>
    					<td><?php echo $img; ?></td>
    				</tr>
    			</table>
    			<div align="center">
    				<input name="action" type="submit" value="Envoyer" />
    				-
    				<input name="reset" type="reset" value="Annuler" />
    			</div>
    		</form><?php } ?>
    	</div>
    	<!--fin centre -->
    	<!--debut pied page -->
    	<div id="pied">
    		<div align="center">Copyright &copy; 2010.</div>
    	</div>
    	<!--fin pied page -->
    </div>
     
    </body>
    </html>
    J’ai laissé à la ligne 22 mon login et domaine au cas où cela vient de là et juste enlevé mon adresse mail.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $expediteur	='web@hostingozone.net;
    et pour finir sur ma page je ne c'est pas si tu as remarqué mais au dessus du titre : ( Formulaire De Contact)

    On voit l'alerte affiché >> Tous les champs sont obligatoires (*) << alors quelle devrait apparaitre que si une case et vide.

    Cordialement Stéphane.

  17. #17
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Re,

    À nouveau le code complet (fonctionnel sur Free).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
     
    <?php
    session_start(); //ouverture la session pour conserver le captcha
     
    $action	=(isset($_POST['action']))?trim(rawurldecode($_POST['action'])):'';
    $sexe	=(isset($_POST['sexe']))?trim(rawurldecode($_POST['sexe'])):'';
    $nom	=(isset($_POST['nom']))?trim(rawurldecode($_POST['nom'])):'';
    $email	=(isset($_POST['email']))?trim(rawurldecode($_POST['email'])):'';
    $sujet	=(isset($_POST['sujet']))?trim(rawurldecode($_POST['sujet'])):'';
    $message=(isset($_POST['message']))?trim(rawurldecode($_POST['message'])):'';
    $captcha=(isset($_POST['captcha']))?trim(rawurldecode($_POST['captcha'])):'';
     
    if(@get_magic_quotes_gpc()){
    	$action=stripslashes($action);
    	$sexe=stripslashes($sexe);
    	$nom=stripslashes($nom);
    	$email=stripslashes($email);
    	$sujet=stripslashes($sujet);
    	$message=stripslashes($message);
    	$captcha=stripslashes($captcha);
    }
     
    $sexe=htmlspecialchars($sexe,ENT_QUOTES);
    $nom=htmlspecialchars($nom,ENT_QUOTES);
    $email=htmlspecialchars($email,ENT_QUOTES);
    $sujet=htmlspecialchars($sujet,ENT_QUOTES);
    $message=htmlspecialchars($message,ENT_QUOTES);
     
    $msg='';
    $flag=0;
     
    if($action=='Envoyer' && $email!='' && $nom!='' && $email!='' && $sujet!='' && $message!='' && $captcha!='' && isset($_SESSION['phrase']) && strtolower($captcha)==$_SESSION['phrase']){
    	$expediteur	='web@hostingozone.net';
    	$destinataire	='Blablabla@live.fr';  //mettez ici votre adresse e-mail en tant que webmaster du site
     
    	$objet="Contact de la page"; // titre du mail automatique
    	$eol="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi ="<p>Vous avez reçu une demande de contact<br />Voici le contenu :</p>\n"; //déclaration du contenu du message
    	$message_envoi.='<pre>Sexe : '.$sexe." \n";
    	$message_envoi.='Nom du contact : '.$nom."\n";
    	$message_envoi.='email du contact : '.$email."\n";
    	$message_envoi.='Sujet du contact : '.$sujet."\n";
    	$message_envoi.="Message du contact :\n".$message."\n</pre>\n"; //rajouter apres cette ligne les autres éléments du formulaire
     
    	$message_envoi="<html><head><title>Mail</title></head><body>\n".$message_envoi."</body></html>";
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	if(@mail($destinataire,$objet,$message_envoi,$header)){
    		$flag=1;
    		@session_destroy();
    	}else
    		$msg='Une erreur est apparue lors de l\'envoi de l\'email';
    }elseif($action=='Envoyer')
    	$msg='Tout les champs sont obligatoires (*)';
     
    // gestion de l'affichage du captcha
    $img='';
    if(!$flag){
    	$filename=dirname(__FILE__).DIRECTORY_SEPARATOR.'captcha.txt';
    	if(($montab=@file($filename))!==false){
    		$montab=array_map('trim',$montab);
    		shuffle($montab);
    		$phrase='';
    		for($i=0;$i<5;$i++){
    			$elem=explode(';',$montab[$i]);
    			$phrase.=$elem[0];
    			$img.='<img src="img_captcha/'.rawurlencode($elem[1]).'" />';
    		}
    		$_SESSION['phrase']=$phrase;
    		@session_write_close();
    	}else
    		$msg='Erreur de lecture';
    }
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css"><!--
    body {
    	background-image: url();
    	background-color: #CCCCCC;
    }
    .Style6 {
    	color: #008000;
    	font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style>
    </head>
     
    <body>
    <div id="page">
    	<!--debut banniere -->
    	<div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.Lien.net" /></div>
    	<!--Fin banniere -->
    	<!--debut menu -->
    	<div id="menu">
    		<ul>
    			<li><a href="#">Nous contacter</a></li>
    			<li><a href="#">Inscrivez-vous</a></li>
    			<li><a href="#">Nos tarifs</a></li>
    			<li><a href="#">Nos services</a></li>
    			<li><a href="index.php">Accueil</a></li>
    		</ul>
    	</div>
    	<!--fin menu -->
    	<!--debut menu gauche -->
    	<div id="gauche">
    		<ul>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			</ul>
    	</div>
    	<!--fin menu gauche -->
    	<!--debut centre -->
    	<div id="centre">
    <?php
    if($flag==1){
    	// quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
    	echo "<p>merci pour votre message</p>\n";
    }
    else {
    	if($msg!=='')echo "\t\t<p><strong>".$msg."</strong></p>\n";
    ?>
    		<form method="post" name="contact" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" >
    			<table>
    				<tr>
    					<td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
    				</tr>
    				<tr>
    					<td colspan="2">S'il vous pla&icirc;t, prenez le temps de remplir tous les champs portant un   ast&eacute;risque <span class="Style1">*</span>,
    					vous nous aiderez &agrave; traiter votre demande le plus rapidement   possible. Merci.
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
    					<td>
    						<select id="sexe" name="sexe">
    							<option value="Madame"<?php if($sexe=='Madame')echo ' selected="selected"'; ?>>Madame</option>
    							<option value="Mademoiselle"<?php if($sexe=='Mademoiselle')echo ' selected="selected"'; ?>>Mademoiselle</option>
    							<option value="Monsieur"<?php if($sexe=='Monsieur')echo ' selected="selected"'; ?>>Monsieur</option>
    						</select>
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
    					<td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $nom; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $email; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Sujet</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $sujet; ?>" /></td>
    				</tr>
    				<tr>
    					<td colspan="2">
    						<div align="center">
    							Votre message : <span class="Style1">*</span><br />
    							<textarea name="message" cols=50 rows=8><?php echo $message; ?></textarea>
    						</div>
    					</td>
    				</tr>
    				<tr>
    					<td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="captcha" size="5"/></td>
    				</tr>
    				<tr>
    					<td><strong>Code a introduire</strong> :</td>
    					<td>
    						<div class="img"><?php echo $img; ?></div>
    					</td>
    				</tr>
    			</table>
    			<div align="center">
    				<input name="action" type="submit" value="Envoyer" />
    				-
    				<input name="reset" type="reset" value="Annuler" />
    			</div>
    		</form><?php } ?>
    	</div>
    	<!--fin centre -->
    	<!--debut pied page -->
    	<div id="pied">
    		<div align="center">Copyright &copy; 2010.</div>
    	</div>
    	<!--fin pied page -->
    </div>
     
    </body>
    </html>
    Il n'y a qu'a modifier la variable $destinataire.

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Bonjour,
    J'ai placé ton code ci-dessous :
    Citation Envoyé par Eric2a Voir le message
    Re,

    À nouveau le code complet (fonctionnel sur Free).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
     
    <?php
    session_start(); //ouverture la session pour conserver le captcha
     
    $action	=(isset($_POST['action']))?trim(rawurldecode($_POST['action'])):'';
    $sexe	=(isset($_POST['sexe']))?trim(rawurldecode($_POST['sexe'])):'';
    $nom	=(isset($_POST['nom']))?trim(rawurldecode($_POST['nom'])):'';
    $email	=(isset($_POST['email']))?trim(rawurldecode($_POST['email'])):'';
    $sujet	=(isset($_POST['sujet']))?trim(rawurldecode($_POST['sujet'])):'';
    $message=(isset($_POST['message']))?trim(rawurldecode($_POST['message'])):'';
    $captcha=(isset($_POST['captcha']))?trim(rawurldecode($_POST['captcha'])):'';
     
    if(@get_magic_quotes_gpc()){
    	$action=stripslashes($action);
    	$sexe=stripslashes($sexe);
    	$nom=stripslashes($nom);
    	$email=stripslashes($email);
    	$sujet=stripslashes($sujet);
    	$message=stripslashes($message);
    	$captcha=stripslashes($captcha);
    }
     
    $sexe=htmlspecialchars($sexe,ENT_QUOTES);
    $nom=htmlspecialchars($nom,ENT_QUOTES);
    $email=htmlspecialchars($email,ENT_QUOTES);
    $sujet=htmlspecialchars($sujet,ENT_QUOTES);
    $message=htmlspecialchars($message,ENT_QUOTES);
     
    $msg='';
    $flag=0;
     
    if($action=='Envoyer' && $email!='' && $nom!='' && $email!='' && $sujet!='' && $message!='' && $captcha!='' && isset($_SESSION['phrase']) && strtolower($captcha)==$_SESSION['phrase']){
    	$expediteur	='web@hostingozone.net';
    	$destinataire	='Blablabla@live.fr';  //mettez ici votre adresse e-mail en tant que webmaster du site
     
    	$objet="Contact de la page"; // titre du mail automatique
    	$eol="\n";
    	$header ='From: '.$expediteur.$eol;
    	$header.='Return-Path: '.$expediteur.$eol;
    	$header.='Reply-To: '.$expediteur.$eol;
    	$header.='X-Priority: 3'.$eol;
    	$header.='X-Mailer: PHP/'.phpversion().$eol;
    	$header.='MIME-Version: 1.0'.$eol;
    	$header.='Content-Type: text/html; charset="ISO-8859-1"'.$eol;
    	$header.='Content-Transfer-Encoding: base64'.$eol.$eol;
     
    	$message_envoi ="<p>Vous avez reçu une demande de contact<br />Voici le contenu :</p>\n"; //déclaration du contenu du message
    	$message_envoi.='<pre>Sexe : '.$sexe." \n";
    	$message_envoi.='Nom du contact : '.$nom."\n";
    	$message_envoi.='email du contact : '.$email."\n";
    	$message_envoi.='Sujet du contact : '.$sujet."\n";
    	$message_envoi.="Message du contact :\n".$message."\n</pre>\n"; //rajouter apres cette ligne les autres éléments du formulaire
     
    	$message_envoi="<html><head><title>Mail</title></head><body>\n".$message_envoi."</body></html>";
    	$message_envoi=chunk_split(base64_encode($message_envoi));
    	// envoi du message
    	if(@mail($destinataire,$objet,$message_envoi,$header)){
    		$flag=1;
    		@session_destroy();
    	}else
    		$msg='Une erreur est apparue lors de l\'envoi de l\'email';
    }elseif($action=='Envoyer')
    	$msg='Tout les champs sont obligatoires (*)';
     
    // gestion de l'affichage du captcha
    $img='';
    if(!$flag){
    	$filename=dirname(__FILE__).DIRECTORY_SEPARATOR.'captcha.txt';
    	if(($montab=@file($filename))!==false){
    		$montab=array_map('trim',$montab);
    		shuffle($montab);
    		$phrase='';
    		for($i=0;$i<5;$i++){
    			$elem=explode(';',$montab[$i]);
    			$phrase.=$elem[0];
    			$img.='<img src="img_captcha/'.rawurlencode($elem[1]).'" />';
    		}
    		$_SESSION['phrase']=$phrase;
    		@session_write_close();
    	}else
    		$msg='Erreur de lecture';
    }
    //fin de gestion du captcha
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css"><!--
    body {
    	background-image: url();
    	background-color: #CCCCCC;
    }
    .Style6 {
    	color: #008000;
    	font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style>
    </head>
     
    <body>
    <div id="page">
    	<!--debut banniere -->
    	<div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.Lien.net" /></div>
    	<!--Fin banniere -->
    	<!--debut menu -->
    	<div id="menu">
    		<ul>
    			<li><a href="#">Nous contacter</a></li>
    			<li><a href="#">Inscrivez-vous</a></li>
    			<li><a href="#">Nos tarifs</a></li>
    			<li><a href="#">Nos services</a></li>
    			<li><a href="index.php">Accueil</a></li>
    		</ul>
    	</div>
    	<!--fin menu -->
    	<!--debut menu gauche -->
    	<div id="gauche">
    		<ul>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			<li><a href="#">Menu</a></li>
    			</ul>
    	</div>
    	<!--fin menu gauche -->
    	<!--debut centre -->
    	<div id="centre">
    <?php
    if($flag==1){
    	// quand le message est parti voici ce qui est affiche, libre à vous de changer ce texte
    	echo "<p>merci pour votre message</p>\n";
    }
    else {
    	if($msg!=='')echo "\t\t<p><strong>".$msg."</strong></p>\n";
    ?>
    		<form method="post" name="contact" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" >
    			<table>
    				<tr>
    					<td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
    				</tr>
    				<tr>
    					<td colspan="2">S'il vous pla&icirc;t, prenez le temps de remplir tous les champs portant un   ast&eacute;risque <span class="Style1">*</span>,
    					vous nous aiderez &agrave; traiter votre demande le plus rapidement   possible. Merci.
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
    					<td>
    						<select id="sexe" name="sexe">
    							<option value="Madame"<?php if($sexe=='Madame')echo ' selected="selected"'; ?>>Madame</option>
    							<option value="Mademoiselle"<?php if($sexe=='Mademoiselle')echo ' selected="selected"'; ?>>Mademoiselle</option>
    							<option value="Monsieur"<?php if($sexe=='Monsieur')echo ' selected="selected"'; ?>>Monsieur</option>
    						</select>
    					</td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
    					<td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $nom; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="email" maxlength="50" size="43" value="<?php echo $email; ?>" /></td>
    				</tr>
    				<tr><td colspan="2">&nbsp;</td></tr>
    				<tr>
    					<td><strong>Sujet</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="sujet" maxlength="50" size="43" value="<?php echo $sujet; ?>" /></td>
    				</tr>
    				<tr>
    					<td colspan="2">
    						<div align="center">
    							Votre message : <span class="Style1">*</span><br />
    							<textarea name="message" cols=50 rows=8><?php echo $message; ?></textarea>
    						</div>
    					</td>
    				</tr>
    				<tr>
    					<td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
    					<td><input type="text" name="captcha" size="5"/></td>
    				</tr>
    				<tr>
    					<td><strong>Code a introduire</strong> :</td>
    					<td>
    						<div class="img"><?php echo $img; ?></div>
    					</td>
    				</tr>
    			</table>
    			<div align="center">
    				<input name="action" type="submit" value="Envoyer" />
    				-
    				<input name="reset" type="reset" value="Annuler" />
    			</div>
    		</form><?php } ?>
    	</div>
    	<!--fin centre -->
    	<!--debut pied page -->
    	<div id="pied">
    		<div align="center">Copyright &copy; 2010.</div>
    	</div>
    	<!--fin pied page -->
    </div>
     
    </body>
    </html>
    Il n'y a qu’à modifier la variable $destinataire.
    J'ai bien modifié la variable $destinataire (mis mon adresse MSN) si je clic sur envoyer il y a bien mon alerte Tous les champs sont obligatoires (*) qui s'affiche si je continue à remplir elle ne disparue pas et une fois tout remplis avec le captcha en lettre majuscule je ne reçois aucun mail. :/

    Cordialement Stéphane.

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Hé hé !!!

    Bon bah voila déjà une bonne chose Ça Marche MAIS .
    Hé oui y a toujours un mais

    Mais ça marche que sur Internet Explorer et sous Firefox ça marche pas :p donc je pouvais toujours testé lol et j'ai reçus le mail en indésirable donc pas pensé a regardé :$ mais indésirable.

    Reste à trouver pourquoi ça marche pas avec les autres navigateurs style FF regardé pourquoi je les reçois en indésirable et vérifier que l'email et bien valide (blabla@**.fr/com etc..) puis rajouter des options comme (adresse, téléphone, code postale)

    Mais franchement Eric2a merci beaucoup du coup de pouce vraiment super de ta part.

    Cordialement Stéphane.

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    Points : 41
    Points
    41
    Par défaut
    Bonjour,
    vue que je ne trouve pas pour le 1er code qui n'est pas compatible avec Firefox j'ai refait un autre formulaire ou il prend en compte le sujet + la validation de mail et le message, mais le souci c'est que j'arrive pas a mettre une alerte comme quoi :
    Madame, Monsieur, Mademoiselle,
    Nom, Prénom
    Captcha ne son pas étais sélectionné (remplie).

    et je n'arrive pas a intégré le système de captcha. et pour ne pas changer mon email arrive toujours en indésirable :/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    <?php
    //Ecrivez votre adresse e-mail entre les guillemets
    $destinataire='Monmail@live.fr';
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Formulaire de contact</title>
    <link href="style.css" rel="stylesheet" type="text/css" />
    <style type="text/css">
    <!--
    body {
    	background-image: url();
    	background-color: #CCCCCC;
    }
    .Style6 {
    	color: #008000;
    	font-weight: bold;
    }
    .Style1 {color: #FF0000}
    -->
    </style></head>
     
    <body>
    <div id="page">
    <!--debut banniere -->
      <div id="baniere"><img src="images/bnr.jpg" alt="banni&egrave;re" width="955" height="150" longdesc="http://www.jetinformatique.fr" /></div>
      <!--Fin banniere -->
      <!--debut menu -->
      <div id="menu">
        <ul>
    	  <li><a href="#">Nous contacter</a></li>
    	  <li><a href="#">Inscrivez-vous</a></li>
    	  <li><a href="#">Nos tarifs</a></li>
    	  <li><a href="#">Nos services</a></li>	
          <li><a href="index.php">Accueil</a></li>    
        </ul>
      </div>
      <!--fin menu -->
      <!--debut menu gauche -->
      <div id="gauche">
        <ul>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Menu</a></li>
        </ul>
      </div>
      <!--fin menu gauche -->
      <!--debut centre -->
      <div id="centre">
        <form id='contact' method="post" action="<?php echo $_server['PHP_SELF'];?>">
          <table width="729">
            <tr>
              <td colspan="2"><div align="center"><span class="Style6">Formulaire De Contact</span></div></td>
            </tr>
            <tr>
              <td colspan="2"><div align="center">
                <?php
    $Envoi="\n".'<p class="bt">
    <input name="envoi" tabindex="4" value="Envoyer" type="submit" /></p>';
    if (isset($_POST['message']))
      {
        // La variable $verif va nous permettre d'analyser si la s&eacute;mantique de l'email est bonne
        $verif='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';
        //quelques remplacements pour les specialchars
        $message=preg_replace('#(<|>)#', '-', $_POST['message']);
        $message=str_replace('"', "'",$message);
        $message=str_replace('&', 'et',$message);
        $objet=preg_replace('#(<|>)#', '-', $_POST['objet']);
        $objet=str_replace('"', "'",$objet);
        $objet=str_replace('&', 'et',$objet);
        // On assigne et/ou prot&egrave;ge nos variables
        $votremail=stripslashes(htmlentities($_POST['votremail']));
        $message=stripslashes(htmlspecialchars($message));
        $objet=stripslashes(htmlspecialchars($objet));
        //input envoi
        $envoi=htmlentities($_POST['envoi']);
        //on enl&egrave;ve les espaces
        $votremail=trim($votremail);
        $message=trim($message);
        $objet=trim($objet);
     
        /*On v&eacute;rifie si l'e mail et le message sont pleins, et on agit en fonction.
          (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/
        //Si ca ne vas pas (mal rempli, mail non valide...)
        if((empty($message))or(empty($objet))or(!preg_match($verif,$votremail)))
          {
            //les 3 champs sont vides
            if(empty($votremail)and(empty($message))and(empty($objet)))
              {
                echo '<p>Tous les champs sont vides.</p>';
                $message='';$votremail='';$objet='';
              }
            //un des champs est vide
            else
              {
                if(!preg_match($verif,$votremail))
                  echo'<p>Votre adresse e-mail n\'est pas valide.</p>';
                else
                {
                  echo'<p>Il faut remplir tous les champs !</p>';
                }
              }
          }
        //Si les deux sont pleins et que l'adresse est valide, on envoie on on pr&eacute;visualise sans envoi
        else
          {
            $domaine=preg_replace('#[^@]+@(.+)#','$1',$votremail);
            $DomaineMailExiste=checkdnsrr($domaine,'MX');
            if(!$DomaineMailExiste)
              echo'<p>Le nom de domaine de l\'adresse e-mail que vous avez donn&eacute; n\'existe pas.</p>';
            elseif(!empty($envoi))
                {
                  $objet='Jet informatique Sujet : '.$objet;
                  $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n".'Content-type:text/plain;charset=is-8859-1'."\r\n".'Sent:'.date('l, F d, Y H:i');
                  if(mail($destinataire,$objet,$message,$headers))
                  {
                    echo '<p>Votre message a bien &eacute;t&eacute; envoy&eacute;. Merci.</p><p><a href="/">Retour &agrave; la page d\'accueil</a></p>';
                    $Envoi='';
                  }
                  else
                    echo'<p>Un probl&egrave;me est survenu durant l\'envoi du mail.</p>';
                }
            else
              echo'<p>Une condition innatendue est survenue lors de l\'ex&eacute;cution du script.</p>';
          }
      }
    else
      {
      echo '<p>S\'il vous plaît, prenez le temps de remplir tous les champs portant un astérisque *, vous nous aiderez à traiter votre demande le plus rapidement possible. Merci. </p>';
      $votremail='';$message='';
      }
    $bas_formulaire=$Envoi;
    ?>
              </div>          </td>
            </tr>
            <tr>
              <td colspan="2">&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Vous &ecirc;tes:</strong> <span class="Style1">*</span></td>
              <td><select id="sexe" name="sexe">
                <option selected="selected" value="<?php echo $_POST["sexe"] ?>">Choisissez</option>
                <option value="Madame">Madame</option>
                <option value="Mademoiselle">Mademoiselle</option>
                <option value="Monsieur">Monsieur</option>
              </select></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Nom, Pr&eacute;nom:</strong> <span class="Style1">*</span></td>
              <td><input type="text" name="nom" maxlength="50" size="43" value="<?php echo $_POST["nom"] ?>" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
     
            <tr>
              <td><strong>Votre Email</strong> : <span class="Style1">*</span></td>
              <td><input name="votremail" tabindex="20" size="30" type="text" id="mail" value="<?php echo $votremail; ?>" /></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr>
              <td><strong>Sujet</strong> : <span class="Style1">*</span></td>
              <td><input type='text' name='objet' id='objet' tabindex='10' size='30' /></td>
            </tr>
            <tr>
              <td colspan="2"><div align="center">
                <p><strong>Votre message</strong> : <span class="Style1">*</span></p>
                <p>
                  <label>
                  <textarea name="message" cols="50" rows="8"></textarea>
                  </label>
                <?php echo $message; ?></p>
              </div></td>
            </tr>
            <tr>
              <td colspan="2">&nbsp;</td>
            </tr>
     
     
            <tr>
              <td><strong>Entr&eacute;e le code</strong> : <span class="Style1">*</span></td>
              <td><input type="text" name="captcha" size="5"/></td>
            </tr>
            <tr>
              <td><strong>Code a introduire</strong> : </td>
              <td></td>
            </tr>
            <tr>
              <td colspan="2"><div align="center"><?php echo $bas_formulaire;?></div></td>
            </tr>
          </table>
        </form>
      </div>
      <!--fin centre -->
      <!--debut pied page -->
      <div id="pied"> 
        <div align="center">Copyright &copy; Kit Graphique Cr&eacute;er en 2010 par Jet Informatique tout droit r&eacute;serv&eacute;.</div>
      </div>
      <!--fin pied page -->
    </div>
     
    </body>
    </html>
    je le c'est très bien que Eric2a c'est donner beaucoup de mal pour m'aide mais j'arrive pas pour rendre son code compatible avec Firefox et que mes mail arrive plus en indésirable mes je le remerci beaucoup.

    Cordialement stéphane

Discussions similaires

  1. probleme gmail et formulaire contact php
    Par eckso7 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 29/05/2014, 21h47
  2. Formulaire contact html avec fichier texte dans zone de liste select
    Par lemask dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 10
    Dernier message: 14/01/2014, 14h54
  3. Réponses: 4
    Dernier message: 22/01/2011, 16h23
  4. Problème formulaire contact PHP
    Par cortobm dans le forum Langage
    Réponses: 2
    Dernier message: 29/01/2008, 11h27
  5. Réponses: 7
    Dernier message: 15/11/2006, 14h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo