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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    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 .

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

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    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 confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    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 .

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

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    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 confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    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 .

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

    Informations forums :
    Inscription : Juillet 2009
    Messages : 207
    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 .

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