Problème pour fonction mail sous firefox

Résolu
Bonjour,

j'ai un petit soucis c'est que mon formulaire répond très bien sous IE mais pas sous firefox auriez vous une idée du pourquoi? stp
Configuration: Windows XP
Internet Explorer 7.0

22 réponses

Résumé de la discussion

Un formulaire qui fonctionne sous IE mais pas sous Firefox pose un problème lié à des erreurs HTML et à une validation qui n'est pas correctement appliquée dans le navigateur. Plusieurs échanges proposent des correctifs HTML et des outils de débogage, l'ajout du type pour les éléments input et l'affichage du POST via print_r pour repérer les valeurs envoyées. Réponse 10 explique que les erreurs venaient des validations côté script et des IDs mal utilisés; il faut placer les vérifications dans la fonction verif_champs et revenir true ou false. En dernier lieu, la version finale montre comment centraliser la vérification JavaScript et corriger les erreurs d'ID et de noms de champs, rendant le formulaire robuste entre Firefox et IE.

Bobot (l’IA à votre service)
  1. personne n'as d'idée?
    0
    1. Contributeur
      ....

      sans le code ca va etre difficile de t'aider :-)
      0
      1. tiens voici mon php

        <?php $dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
        $sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
        echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";

        $msg .= "Une réponse au questionnaire a été faites\n\n";
        $genre = $_POST['genre'];
        $msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
        $msg .=" Son age : ($_POST[age]) \n" ;
        $msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
        $msg .=" Sa région est : ($_POST[region]) \n" ;
        $msg .=" Sa ville est : ($_POST[ville]) \n" ;
        $provenance = $_POST['provenance'];
        $msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
        $type = $_POST['type'];
        $msg .=" Elle possède un ordinateur de " . $type . "\n" ;
        $operateur = $_POST['operateur'];
        $msg .=" Elle est chez " . $operateur . "\n" ;
        $msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
        $niveau = $_POST['niveau'];
        $msg .=" La personne se considère comme " . $niveau . "\n" ;
        $note = $_POST['Note'];
        $msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
        $note1 = $_POST['Note1'];
        $msg .= "La note pour les formations à domicile est " . $Note1 ."\n";
        $note2 = $_POST['Note2'];
        $msg .= "La note pour les installations de matérielle soi meme est " . $Note2 . "\n";
        $note3 = $_POST['Note3'];
        $msg .= "La note pour les achats sur le net est " . $Note3 . "\n";
        $note5 = $_POST['Note5'];
        $msg .= "La note pour les formations des enfants est " . $Note4 . "\n";
        $note6 = $_POST['Note6'];
        $msg .= "La note pour les créations de site est " . $Note5 . "\n";
        if (mail($dest_mail, $sujet, $msg)) {
        echo "Mail envoyé";
        } else {
        echo "Echec envoi mail";
        }
        ?>

        et mon html

        <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
        <html><head>
        <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>questionnaire.html</title></h­ead>
        <body>
        <form method="post" action="questionnaire.php">
        <p style="text-align: center;"><big style="text-decoration: underline;"><big><span style="font-weight: bold;">Questionnaire </span></big></big></p>
        <p style="text-align: left;"></p>
        <p style="text-align: left;"><big style="font-weight: bold;">Vous êtes :</big></p>
        <p style="text-align: left;"><br>
        <select name="genre" id="genre"><option value="femme">Femme</option><option value="homme">Homme</option></select>
        </p>
        <br>
        <div style="text-align: left;"><big><big><span style="font-weight: bold;"><small><br>
        Adresse E-Mail : (Facultatif)</small><br>
        <br>
        </span></big></big><big><big><span style="font-weight: bold;"><input maxlength="40" size="40" name="mail"></span></big></big><br>
        <br>
        <big style="font-weight: bold;">Votre âge ?
        </big><br>
        <br>
        <input maxlength="15" size="15" name="age"><br>
        <br>
        <big>
        <p class="MsoNormal"><span style="font-weight: bold;">Dans
        quelle région de France habitez-vous ?</span> </p>
        </big><br>
        <big><input maxlength="15" size="15" name="region"></big><br>
        <br>
        <big>
        </big>
        <p style="font-weight: bold;" class="MsoNormal"><big>Dans
        quelle ville résidez-vous ?</big></p>
        <p class="MsoNormal"><big><input maxlength="15" size="15" name="ville"></big></p>
        <p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous
        un ordinateur ? Si
        oui préciser sa provenance</big></p>
        <select name="provenance" id="provenance"><option value="boutiquedassemblage">Boutique d'assemblage</option><option value="grandesurface">Grandesurface</option></select>
        <br>
        <br>
        <big><span style="font-weight: bold;">Quel
        type d’ordinateur possédez-vous ?</span></big><big style="font-weight: bold; text-decoration: underline;">
        </big><br>
        <br>
        <select name="type" id="type"><option value="bureau">Bureau</option><option value="portable">portable</option></select>
        <br>
        <br>
        <p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous
        internet par
        l’ADSL ? Si oui quel operateur ?</big></p>
        <br>
        <select name="operateur" id="operateur"><option value="orange">Orange</option><option value="neuf">Neuf</option><option value="sfr">SFR</option><option value="free">Free</option><option value="autres">Autres</option></select>
        <br>
        <br>
        <big><span style="font-weight: bold;">Précisez
        pour autre svp :</span></big>
        <br>
        <br>
        <input maxlength="40" size="40" name="Autres2">
        <p style="font-weight: bold;" class="MsoNormal"><big>Comment
        vous considérez-vous en la matière ?</big></p>
        <select name="niveau" id="niveau"><option value="debutant">Débutant</option><option value="intermediaire">Intermédiaire</option><option value="expert">Expert</option></select>
        <br>
        <br>
        <div style="text-align: center;"><big><span style="font-weight: bold;">Pour cette nouvelle série de question,
        vous devrez effectuer
        une notation entre
        0 et 10 ce qui nous
        permettra de juger les différents besoins de services de nôtre
        clientèle.</span>
        </big></div>
        <p style="font-weight: bold;" class="MsoNormal"></p>
        <p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"><big><span style=""><span style=""><span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">
        </span></span></span> Que
        pensez-vous d’une
        assistance à
        domicile ?</big></p>
        <select name="Note" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
        <p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"></p>
        <p style="font-weight: bold;" class="MsoNormal"><big>Seriez-vous
        intéressés par des formations à domicile ?</big></p>
        <select name="Note1" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
        <p style="font-weight: bold;" class="MsoNormal"></p>
        <p style="font-weight: bold;" class="MsoNormal"><big>Trouvez-vous
        contraignant d’installer votre matériel
        informatiques vous même ?</big></p>
        <select name="Note2" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
        <p style="font-weight: bold;" class="MsoNormal"></p>
        <big style="font-weight: bold;"><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";"><big>Commanderiez-vous
        des pièces informatiques par internet si vous en aviez
        l’opportunité ?</big> </span><br>
        <select name="Note3" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
        <br>
        <br>
        <big><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";">Aimeriez-
        vous que votre enfant bénéficie d’une formation informatique<span style=""> </span>à l’école dès son plus
        jeunes âges
        (Primaire) ?</span></big><br>
        <select name="Note4" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
        <br>
        <big style="text-decoration: underline;"><br>
        </big><big><span style="font-size: 11pt; line-height: 115%; font-family: "Calibri","sans-serif";">Avez-vous
        déjà pensé à créer un site internet ? </span></big></big><br>
        <select name="Note5" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
        <br>
        <br>
        <div style="text-align: center;"><big><big><span style="font-weight: bold;"><a href="questionnaire.php"><input value="Valider" type="submit"></a>

        </span></big></big><input value="annuler" type="reset">
        </div>
        </div>
        </form>

        </body></html>
        0
        1. c'est bon sov^36 tu y comprend quelque chose?
          car moi non je ne vois pas pourquoi ca répond pas sous firefox
          0
          1. personne ne vois le problème?
            0
            1. up
              0
              1. Bonjour,

                je n'avais pas vu ton cet autre post.

                à la lecture rapide de ton code, il y a des erreurs dans la partie HTML

                <input maxlength="40" size="40" name="mail">

                il faut ABSOLUMENT le type="..." dans les <input

                ex:
                <input type="text" name="mail" value=""  maxlength="40" size="40" />
                


                pour voir ce que tu reçoit dans ton script php tu peux mettre tout au début du script "questionnaire.php":

                <?php

                echo "<pre>";
                print_r($_POST);
                echo "</pre>";

                tu va voir un array de tous tes champs postés avec leur index et leur valeur

                @lain
                0
            2. Je met ca :

              echo "<pre>";
              print_r($_POST);
              echo "</pre>";

              et du coup je verais toute mes variables?

              Mais avant je modifie tout mes input c'est bien ca?
              0
              1. Excusez moi jdois etre con mais j'ai du mal avec la concaténation comment se fait til qu'il y a une erreur dans ce code?

                echo "L\'envoi a bien été effectué !";

                Parse error: syntax error, unexpected T_ECHO, expecting ',' or ';' in /mnt/104/sdb/7/8/site.inter/stage/concours_ts.php on line 28
                0
                1. Après avoir fait :

                  echo "<pre>";
                  print_r($_POST);
                  echo "</pre>";

                  Sous IE:

                  Array
                  (
                  [nom] => lelais
                  [prenom] => seb
                  [naissance] => 13/04/86
                  [lieu] => st calais
                  [dpt] => 72
                  [adresse] =>
                  [telephone] => 0243570327
                  [telecopie] => ...
                  [portable] => 0682454401
                  [mail] => sebastien72700@hotmail.fr
                  [classe] => lycée Maréchal leclerc
                  [option] => BEP
                  [annee] => 1998
                  [classe2] => lycée sud
                  [option2] => BAC
                  [annee2] => 2000
                  [classe3] =>
                  [option3] =>
                  [annee3] =>
                  [classe4] =>
                  [option4] =>
                  [annee4] =>
                  [classe5] => Malraux
                  [option5] => BTS
                  [annee5] => 2008
                  [classe6] =>
                  [option6] =>
                  [annee6] =>
                  [classe7] =>
                  [option7] =>
                  [annee7] =>
                  [classe8] =>
                  [option8] =>
                  [annee8] =>
                  [diplome] => BEP
                  [mention] => /
                  [annee9] => 1999
                  [diplome2] => BAC
                  [mention2] => /
                  [annee10] => 2007
                  )

                  Votre inscription lelais seb nous est bien parvenue

                  Sous firefox :

                  Array
                  (
                  )

                  Votre inscription nous est bien parvenue
                  0
                  1. Et maintenant j'ai modifié tout mon html en modifiant tout les input et ...

                    rien ne change
                    0
                    1. up
                      0
                      1. donnes ton code html rectifé
                        0
                    2. salut,
                      j'ai une petite idée, je ne sais pas si ça marche ou non, mais tu dois donner un nom à ton formulaire
                           <form name="mon_formulaire" method="post" action="questionnaire.php"> 
                      
                      0
                      1. Bon je t'ai rectifié ton code formulaire HTML,, pas mal d'erreurs encore:

                        Quand tu as style=".........;" ne mets pas des " pour times news roman" dedans mais des '

                        et si le nom de la pôlice est en un seul mot pas la peine de mettre des " ou des'

                        ensuite ta grosse erreur qui bloquait fire fox c'est :

                        <a href="questionnaire.php><input type="submit ..........</a>

                        on ne met pas un bouton dans un lien

                        c'est un bouton submit il envoie le questionnaire tout seul au script qui est précisé dans <form action="...

                        ton formulaire modifié:

                        <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
                        <html><head>
                        <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>questionnaire.html</title></h­­ead>
                        <body>
                        <form name="formulaire" method="post" action="questionnaire.php">
                        
                        <p style="text-align: center;"><big style="text-decoration: underline;"><big><span style="font-weight: bold;">Questionnaire </span></big></big></p>
                        <p style="text-align: left;"></p>
                        <p style="text-align: left;"><big style="font-weight: bold;">Vous êtes :</big></p>
                        <p style="text-align: left;"><br>
                        <select name="genre" id="genre">
                        <option value="femme">Femme</option>
                        <option value="homme">Homme</option>
                        </select>
                        </p>
                        <br>
                        <div style="text-align: left;"><big><big><span style="font-weight: bold;"><small><br>
                        Adresse E-Mail : (Facultatif)</small><br>
                        <br>
                        </span></big></big><big><big><span style="font-weight: bold;">
                        <input type="text" maxlength="40" size="40" name="mail">
                        </span></big></big><br>
                        <br>
                        <big style="font-weight: bold;">Votre âge ?
                        </big><br>
                        <br>
                        <input type="text" maxlength="15" size="15" name="age"><br>
                        <br>
                        <big>
                        <p class="MsoNormal"><span style="font-weight: bold;">Dans
                        quelle région de France habitez-vous ?</span> </p>
                        </big><br>
                        <big><input type="text" maxlength="15" size="15" name="region"></big><br>
                        <br>
                        <big>
                        </big>
                        <p style="font-weight: bold;" class="MsoNormal"><big>Dans quelle ville résidez-vous ?</big></p>
                        <p class="MsoNormal"><big><input type="text" maxlength="15" size="15" name="ville"></big></p>
                        <p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous un ordinateur ? Si oui préciser sa provenance</big></p>
                        <select name="provenance" id="provenance">
                        <option value="boutiquedassemblage">Boutique d'assemblage</option>
                        <option value="grandesurface">Grandesurface</option>
                        </select>
                        <br>
                        <br>
                        <big><span style="font-weight: bold;">Quel type d’ordinateur possédez-vous ?</span></big>
                        <big style="font-weight: bold; text-decoration: underline;"></big>
                        <br>
                        <br>
                        <select name="type" id="type">
                        <option value="bureau">Bureau</option>
                        <option value="portable">portable</option>
                        </select>
                        <br>
                        <br>
                        <p style="font-weight: bold;" class="MsoNormal"><big>Avez-vous internet par l’ADSL ? Si oui quel operateur ?</big></p>
                        <br>
                        <select name="operateur" id="operateur">
                        <option value="orange">Orange</option>
                        <option value="neuf">Neuf</option>
                        <option value="sfr">SFR</option>
                        <option value="free">Free</option>
                        <option value="autres">Autres</option>
                        </select>
                        <br>
                        <br>
                        <big><span style="font-weight: bold;">Précisez pour autre svp :</span></big>
                        <br>
                        <br>
                        <input type="text" maxlength="40" size="40" name="Autres2">
                        <p style="font-weight: bold;" class="MsoNormal"><big>Comment vous considérez-vous en la matière ?</big></p>
                        <select name="niveau" id="niveau"><option value="debutant">Débutant</option><option value="intermediaire">Intermédiaire</option><option value="expert">Expert</option></select>
                        <br>
                        <br>
                        <div style="text-align: center;"><big><span style="font-weight: bold;">Pour cette nouvelle série de question,
                        vous devrez effectuer
                        une notation entre
                        0 et 10 ce qui nous
                        permettra de juger les différents besoins de services de nôtre
                        clientèle.</span>
                        </big></div>
                        <p style="font-weight: bold;" class="MsoNormal"></p>
                        <p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"><big><span style=""><span style=""><span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">
                        </span></span></span> Que pensez-vous d’une assistance à domicile ?</big></p>
                        <select name="Note" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
                        <p class="MsoListParagraph" style="text-indent: -18pt; font-weight: bold;"></p>
                        <p style="font-weight: bold;" class="MsoNormal"><big>Seriez-vous
                        intéressés par des formations à domicile ?</big></p>
                        <select name="Note1" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
                        <p style="font-weight: bold;" class="MsoNormal"></p>
                        <p style="font-weight: bold;" class="MsoNormal"><big>Trouvez-vous
                        contraignant d’installer votre matériel
                        informatiques vous même ?</big></p>
                        <select name="Note2" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
                        <p style="font-weight: bold;" class="MsoNormal"></p>
                        <big style="font-weight: bold;"><span style="font-size: 11pt; line-height: 115%; font-family: Calibri,sans-serif;"><big>Commanderiez-vous
                        des pièces informatiques par internet si vous en aviez
                        l’opportunité ?</big> </span><br>
                        <select name="Note3" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
                        <br>
                        <br>
                        <big><span style="font-size: 11pt; line-height: 115%; font-family: Calibri,sans-serif;">Aimeriez-
                        vous que votre enfant bénéficie d’une formation informatique<span style=""> </span>à l’école dès son plus
                        jeunes âges
                        (Primaire) ?</span></big><br>
                        <select name="Note4" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
                        <br>
                        <big style="text-decoration: underline;"><br>
                        </big><big><span style="font-size: 11pt; line-height: 115%; font-family: 'Calibri',sans-serif;">Avez-vous
                        déjà pensé à créer un site internet ? </span></big></big><br>
                        <select name="Note5" id="Note"><option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option></select>
                        <br>
                        <br>
                        <div style="text-align: center;"><big><big><span style="font-weight: bold;">
                        <input type="submit" value="Valider" name="submit">
                        
                        </span></big></big><input type="reset" value="annuler" name="reset">
                        </div>
                        </div>
                        </form>
                        
                        </body></html> 
                        
                        et questionnaire.phpmodifié
                        
                        attention la casse des variable a de l'importance en php  $note n'est pas la même variable que $Note
                        il te rest à voir au niveau des $notes 4  5  6
                        <code>
                        <?php 
                        echo "<pre>";
                        print_r($_POST);
                        echo "</pre>"; 
                        $dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
                        $sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
                        echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";
                        $msg="";// tu ajoutait a  une varaible qui n'existait pas
                        $msg .= "Une réponse au questionnaire a été faites\n\n";
                        $genre = $_POST['genre'];
                        $msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
                        $msg .=" Son age : ($_POST[age]) \n" ;
                        $msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
                        $msg .=" Sa région est : ($_POST[region]) \n" ;
                        $msg .=" Sa ville est : ($_POST[ville]) \n" ;
                        $provenance = $_POST['provenance'];
                        $msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
                        $type = $_POST['type'];
                        $msg .=" Elle possède un ordinateur de " . $type . "\n" ;
                        $operateur = $_POST['operateur'];
                        $msg .=" Elle est chez " . $operateur . "\n" ;
                        $msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
                        $niveau = $_POST['niveau'];
                        $msg .=" La personne se considère comme " . $niveau . "\n" ;
                        $note = $_POST['Note'];
                        $msg .= "La note pour l'assistance à domicile est " . $note ."\n";// majuscule minuscule important pour les noms de variables !!
                        $note1 = $_POST['Note1'];
                        $msg .= "La note pour les formations à domicile est " . $note1 ."\n";
                        $note2 = $_POST['Note2'];
                        $msg .= "La note pour les installations de matérielle soi meme est " . $note2 . "\n";
                        $note3 = $_POST['Note3'];
                        $msg .= "La note pour les achats sur le net est " . $note3 . "\n";
                        //la regardes de plus pres tu as note5 et apres tu utilises note4 ??? idem pour note 6 et note 5
                        $note5 = $_POST['Note5'];
                        $msg .= "La note pour les formations des enfants est " . $note4 . "\n";
                        $note6 = $_POST['Note6'];
                        $msg .= "La note pour les créations de site est " . $note5 . "\n";
                        if (mail($dest_mail, $sujet, $msg)) {
                        echo "Mail envoyé";
                        } else {
                        echo "Echec envoi mail";
                        }
                        ?> 
                        

                        </code>
                        0
                    3. Tout d'abbord merci alain_42
                      le problème n'existe plus grace a toi
                      tu es très fort et j'aurais voulu savoir si tu aurais pu me dire si tu pourrais regarder a nouveau le code php car je veux forcer les gens a remplir les cases et ca ne fonctionne pas.

                      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
                      <html>
                      <head>
                      <meta content="text/html; charset=ISO-8859-1"
                      http-equiv="content-type">
                      <title></title>
                      </head>
                      <body>
                      <?PHP
                      if (isset($_POST[age]) && isset($_POST[region]) && isset($_POST[ville]))
                      {
                      // Les champs sont rempli donc on envoi le mail
                      $dest_mail = 'rsr.pcworld@gmail.com'; # Destinataire du mail
                      $sujet = "Réponse au questionnaire RSR-pc-world-agence informatique";
                      echo "<p>Votre réponse à ce questionnaire a bien été prise en compte. Nous vous remercions de votre participation. Aucune information relative à ce questionnaire ne sera divulguée.</p>";

                      $msg .= "Une réponse au questionnaire a été faites\n\n";
                      $genre = $_POST['genre'];
                      $msg .="La personne ayant répondu à ce questionnaire est 1" . $genre . "\n";
                      $msg .=" Son age : ($_POST[age]) \n" ;
                      $msg .=" Son adresse mail est : ($_POST[mail]) \n" ;
                      $msg .=" Sa région est : ($_POST[region]) \n" ;
                      $msg .=" Sa ville est : ($_POST[ville]) \n" ;
                      $provenance = $_POST['provenance'];
                      $msg .=" Son ordinateur provient dune " . $provenance . "\n" ;
                      $type = $_POST['type'];
                      $msg .=" Elle possède un ordinateur de " . $type . "\n" ;
                      $operateur = $_POST['operateur'];
                      $msg .=" Elle est chez " . $operateur . "\n" ;
                      $msg .=" Si elle vient de cocher autres alors cest chez : ($_POST[Autres2]) \n" ;
                      $niveau = $_POST['niveau'];
                      $msg .=" La personne se considère comme " . $niveau . "\n" ;
                      $note = $_POST['Note'];
                      $msg .= "La note pour l'assistance à domicile est " . $Note ."\n";
                      $note1 = $_POST['Note1'];
                      $msg .= "La note pour les formations à domicile est " . $Note1 ."\n";
                      $note2 = $_POST['Note2'];
                      $msg .= "La note pour les installations de matérielle soi meme est " . $Note2 . "\n";
                      $note3 = $_POST['Note3'];
                      $msg .= "La note pour les achats sur le net est " . $Note3 . "\n";
                      $note5 = $_POST['Note5'];
                      $msg .= "La note pour les formations des enfants est " . $Note4 . "\n";
                      $note6 = $_POST['Note6'];
                      $msg .= "La note pour les créations de site est " . $Note5 . "\n";
                      if (mail($dest_mail, $sujet, $msg)) {
                      echo "Mail envoyé";
                      } else {
                      echo "Echec envoi mail";
                      }
                      }
                      else
                      {
                      // Un ou plusieurs champs ne sont pas remplis donc on affiche un message d'erreur et un lien retour
                      echo "<div align=center>Il faut remplir tous les champs du formulaire<br><br><a href='javascript:history.back();'>Retour</a></div>";
                      }
                      ?>
                      <br>
                      </body>
                      </html>
                      0
                      1. salut,

                        pour verifier que les champs sont remplis avant d'envoyer, il faut passer par du javascript:

                        <head>
                        <script language="javascript">
                        //fonction verification si champs remplis
                        //si le champ est vide, elle fait un message d'alerte et renvoie false donc le formulaire n'est pas envoyé
                        //si tous les champs testés par les if ne sont pas vides elle renvoie true et le formulaire est envoyé
                        function verif_champs(){
                        	if(document.GetElementById('region').value == ""){
                        		alert("Vous devez remplir le champ Region !");
                        		return false
                        	}
                        	//etc  tu fais pareil tu rajoutes des if ..... pour tous les champs text
                        
                        return true;
                        }
                        </script>
                        </head>
                        ......
                        
                        <form name="formulaire" method="post" action="questionnaire.php" onSubmit="return verif_champs();">
                        .......
                        onSubmit="return verif_champs();" veut dire que lorsque le submit est clické on attend la réponse de la fonction javascript pour envoyer ou pas
                        et un exemple de champ type= text
                        
                        IL FAUT METTRE UN id="...."   que tu retrouves dans ta fonction pour tester par le if (document...
                        
                        <input type="text" name="region" id="region" maxlength="15" size="15" >
                        
                        tous les <input doivent avoir au minimum type=".." name="..." id="...." value="..."
                        pour value tu peux mettre vide  value=""
                        
                        


                        @lain
                        0
                    4. d'accord c'est obligé le javascript? car je n'y connais rien et du coup je ne pourrais pas le faire...
                      0
                      1. En javascript ce n'est pas obligatoire bien sur, l'avantage c'est que la verif est faire avant l'envoi du formulaire.

                        Ce n'est pas compliqué, tu n'as qu'a mettre la fonction que je t'ai fait entre les balises <head></head>

                        et la completer pour les autres champs text

                        et rajouter les id="..." dans les champs text correspondants

                        On peut aussi faire la verif en PHHP mais c'est un peu plus compliqué, ça recharge la page et il faut mettre le formulaire et le script php dans le même fichier.
                        0
                        1. c'est tout ce que j'ai a faire?

                          quand dans <input type="text" name="region" maxlength="15" size="15" >

                          j'ai juste a rajouter ca dans tout les input?

                          et mettre la fonction dans head?
                          0
                          1. Tu mets la fonction et les balises <scipt.....

                            dans le head

                            et dans tes <input à vérifier tu RAJOUTES id="region" par exemple

                            tu mets la même valeur que pour le name

                            tu complètes la fonction en rajoutant des if pour les autres champs a verifier

                            tu RAJOUTES onSubmit="... comme je t'ai indiqué
                            0
                        • 1
                        • 2