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

JavaScript Discussion :

fonction de verification de formulaire javascript


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut fonction de verification de formulaire javascript
    bonjour à tous,

    Je souhaiterais obtenir votre aide afin de mettre en place une vérification d'un formulaire comprenant des champs (text, commentaire, choix multiple et mail)
    Novice en javascript.je n'arrive pas et je ne sais pas comment verifier tous mes champs.
    la fonction verification:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script language="javascript">
    function verif_formulaire()
    {
     if(document.formulaire.name.value == "")  {
       alert("Veuillez entrer votre nom!");
       document.formulaire.name.focus();
       return false;
      }
     
    </script>
    voila le formulaire:
    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
     
    <form action="confirmation.php" method="post" >
     
    <div class="date1">
    We are glad to a open preliminary survey in order to select players who will take part to the upcoming Beta test of the new episode of the Sherlock Holmes series: Sherlock Holmes vs. Jack the Ripper. Thank you for your time answering the following questions and maybe will you take part to this great adventure! The quality of your answers will be determining your chance to be picked up as only the most motivated people with fluent English and beta testing skills will be selected.
    </div>
     
    <p>
    <div class="date"><label for="name">Name/First Name :</label>
    <input type="text" name="name" id="name"  value="<?php if(!empty($_POST['name'])) { echo htmlspecialchars($_POST['name'], ENT_QUOTES); } ?>"  />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="birth">Year of birth :</label>
    <select name="birth" class="select">
                    <option value="<?php echo("$birth"); ?>"><?php echo("$birth"); ?></option>
     
                        <option value="1920" >1920</option> 
                        <option value="1921" >1921</option>
                        <option value="1922" >1922</option>
                        <option value="1923" >1923</option>
                        <option value="1924" >1924</option>
                        <option value="1925" >1925</option>
                        <option value="1926" >1926</option>
                        <option value="1927" >1927</option>
                        <option value="1928" >1928</option>
                        <option value="1929" >1929</option>
                        <option value="1930" >1930</option>
                        <option value="1931" >1931</option>
                        <option value="1932" >1932</option>
                        <option value="1933" >1933</option>
                        <option value="1934" >1934</option>
                        <option value="1935" >1935</option>
                        <option value="1936" >1936</option>
                        <option value="1937" >1937</option>
                        <option value="1938" >1938</option>
                        <option value="1939" >1939</option>
                        <option value="1940" >1940</option>
                        <option value="1941" >1941</option>
                        <option value="1942" >1942</option>
                        <option value="1943" >1943</option>
                        <option value="1944" >1944</option>
                        <option value="1945" >1945</option>
                        <option value="1946" >1946</option>
                        <option value="1947" >1947</option>
                        <option value="1948" >1948</option>
                        <option value="1949" >1949</option>
                        <option value="1950" >1950</option>
                        <option value="1951" >1951</option>
                        <option value="1952" >1952</option>
                        <option value="1953" >1953</option>
                        <option value="1954" >1954</option>
                        <option value="1955" >1955</option>
                        <option value="1956" >1956</option>
                        <option value="1957" >1957</option>
                        <option value="1958" >1958</option>
                        <option value="1959" >1959</option>
                        <option value="1960" >1960</option>
                        <option value="1961" >1961</option>
                        <option value="1962" >1962</option>
                        <option value="1963" >1963</option>
                        <option value="1964" >1964</option>
                        <option value="1965" >1965</option>
                        <option value="1966" >1966</option>
                        <option value="1967" >1967</option>
                        <option value="1968" >1968</option>
                        <option value="1969" >1969</option>
                        <option value="1970" >1970</option>
    					<option value="1971" >1971</option>
                        <option value="1972" >1972</option>
    					<option value="1973" >1973</option>
    					<option value="1974" >1974</option>
    					<option value="1975" >1975</option>
    					<option value="1976" >1976</option>
    					<option value="1977" >1977</option>
    					<option value="1978" >1978</option>
    					<option value="1979" >1979</option>
    					<option value="1980" >1980</option>
                        <option value="1981" >1981</option>
                        <option value="1982" >1982</option>
                        <option value="1983" >1983</option>
                        <option value="1984" >1984</option>
                        <option value="1985" >1985</option>
                        <option value="1986" >1986</option>
                        <option value="1987" >1987</option>
                        <option value="1988" >1988</option>
                        <option value="1989" >1989</option>
                        <option value="1990" >1990</option>
                        <option value="1991" >1991</option>
                        <option value="1992" >1992</option>
                        <option value="1993" >1993</option>
                        <option value="1994" >1994</option>
                        <option value="1995" >1995</option>
                        <option value="1996" >1996</option>
                        <option value="1997" >1997</option>
                        <option value="1998" >1998</option>
                        <option value="1999" >1999</option>
                        <option value="2000" >2000</option>
                        <option value="2001" >2001</option>
     
     </select>
     </p>
     <!--<img src="img/sep.gif" alt="" vspace="1">-->
     <p>
    <label for="mail">Mail</label>
    <input type="text" name="mail" id="mail" value="<?php if(!empty($_POST['mail'])) { echo htmlspecialchars($_POST['mail'], ENT_QUOTES); } ?>" />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="configuration">Configuration pc (Processor/ 3D graphics card/memory) :</label>
    </p>
    <p>
    <input type="text" name="configuration" id="configuration" value="<?php if(!empty($_POST['configuration'])) { echo htmlspecialchars($_POST['configuration'], ENT_QUOTES); } ?>" />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="internet">Internet broadband :</label>
    <select name="internet" class="select">
                    <option value="<?php echo("$internet"); ?>"><?php echo("$internet"); ?></option>
     
                        <option value="Cable Modem" >Cable Modem</option> 
                        <option value="Dialup" >Dialup</option>
                        <option value="DSL" >DSL</option>
                        <option value="LAN" >LAN</option>
                        <option value="Wireless" >Wireless</option>
                        <option value="Satellite" >Satellite</option>
     
     
     
     </select>
     </p>
    <img src="img/sep.gif" alt="" vspace="1">
    <p>
    <label for="adventure">1) Which was your last adventure game ? </label>
    </p>
    <p>
    <input type="text" name="adventure" id="adventure" value="<?php if(!empty($_POST['adventure'])) { echo htmlspecialchars($_POST['adventure'], ENT_QUOTES); } ?>" />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="episode">2) Which episode(s) of Sherlock Holmes have you played*? </label>
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />None
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="finished">3) Which ones have you finished? </label>
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />None
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="">4) If you played a Sherlock Holmes adventure can you describe your favourite scene from one of those Sherlock episodes (200 words limited) ?</label>
    </p>
    <p>
    <textarea name="adventure" id="adventure" rows="2" cols="35"></textarea>
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="">5) What is your favourite adventure game, and can describe in a few sentences why?</label>
    </p>
    <p>
    <textarea name="adventure_game" id="adventure_game" rows="2" cols="35"></textarea>
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="">6) Have you yet participated to a beta test ? if yes, for which game(s)?</label>
    </p>
    <p>
    <textarea name="beta_test" id="beta_test" rows="2" cols="35"></textarea>
    </p>
    <p></div>
    <center>
    	<input type="image" src="img/btn_submit.gif" value="envoyer" onClick="return(validerRadioGroup(this.form));"/>
    	</center>
    </p>
    </form>
    merci beaucoup
    sam!

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Merci de procéder a une recherche avant de poster ...
    http://www.developpez.net/forums/d39...ps-formulaire/
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    merci de votre réponse.
    la fonction m'a l'air d'etre très interessante mais comment je pourrais adapté à mon cas?
    comment je fais la verification sur le formulaire dans le <form> ou le bouton submit et par quel script?

    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
     
    function TestValidationFormulaire() { 
       // Récupère tous les éléments du formulaire en cours 
       var RecupElements = eval('document.forms[0].elements'); 
       var IsNone; 
       var IsCorrect; 
       var IsRadioChecked; 
       var tmp; 
       // Boucle sur tous les éléments du formulaire 
       for (i = 0; i < RecupElements.length; i++) { 
          // Test pour savoir si le champs est caché 
          if (RecupElements[i].style.display == 'none') { 
             // Passe la variable en caché 
             IsNone = true; 
          } else { 
             IsNone = false; 
          } 
          // Passe la variable à vrai 
          IsCorrect = true; 
          // Passe la variable à vrai 
          IsRadioChecked = false; 
          if (!IsNone) { 
             // Si le champs n'est pas caché 
             switch(RecupElements[i].type) { 
                // Test le type de champs 
                case "text": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus; 
                      IsCorrect = false; 
                   } 
                   break; 
                case "textarea": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus(); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-one": 
                   // Test l'index de la liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-multiple": 
                   // Test l'index de liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false;               } 
                   break; 
                default: 
                   if (!RecupElements[i]) { // Simple 
                      switch(RecupElements[i].type) { 
                         case "checkbox": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                         case "radio": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } else { 
                      switch(RecupElements[i].type) { // Multiple 
                         case "checkbox": 
                            // Récupère l'objet checkbox 
                            var RecupCheckbox = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupCheckbox.length; j++) { 
                               // Test si l'objet est coché 
                               if (!RecupCheckbox[j].checked) { 
                                  alert(Cor_MessageChamps(RecupElements[i].name)); 
                                  IsCorrect = false; 
                                  break; 
                               } 
                            } 
                            break; 
                         case "radio": 
                            // Récupère l'objet radio 
                            var RecupRadio = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupRadio.length; j++) { 
                               // Test si l'objet est coché 
                               if (RecupRadio[j].checked) { 
                                  IsRadioChecked = true; 
                                  break; 
                               } else { 
                                  IsRadioChecked = false; 
                                  tmp = j 
                               } 
                               if (IsRadioChecked) { break } 
                            } 
                            if (!IsRadioChecked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } 
             } 
          } 
          // On repasse la variable en non caché 
          IsNone = false 
          if (!IsCorrect) { 
              // si un champs n'est pas ok on quitte la boucle 
             break; 
          } 
       } 
    }
    comment adapté à ce formulaire?
    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
     
    <form action="confirmation.php" method="post" >
     
    <div class="date1">
    We are glad to a open preliminary survey in order to select players who will take part to the upcoming Beta test of the new episode of the Sherlock Holmes series: Sherlock Holmes vs. Jack the Ripper. Thank you for your time answering the following questions and maybe will you take part to this great adventure! The quality of your answers will be determining your chance to be picked up as only the most motivated people with fluent English and beta testing skills will be selected.
    </div>
     
    <p>
    <div class="date"><label for="name">Name/First Name :</label>
    <input type="text" name="name" id="name"  value="<?php if(!empty($_POST['name'])) { echo htmlspecialchars($_POST['name'], ENT_QUOTES); } ?>"  />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="birth">Year of birth :</label>
    <select name="birth" class="select">
                    <option value="<?php echo("$birth"); ?>"><?php echo("$birth"); ?></option>
     
                        <option value="1920" >1920</option> 
                        <option value="1921" >1921</option>
                        <option value="1922" >1922</option>
                        <option value="1923" >1923</option>
                        <option value="1924" >1924</option>
                        <option value="1925" >1925</option>
                        <option value="1926" >1926</option>
                        <option value="1927" >1927</option>
                        <option value="1928" >1928</option>
                        <option value="1929" >1929</option>
                        <option value="1930" >1930</option>
                        <option value="1931" >1931</option>
                        <option value="1932" >1932</option>
                        <option value="1933" >1933</option>
                        <option value="1934" >1934</option>
                        <option value="1935" >1935</option>
                        <option value="1936" >1936</option>
                        <option value="1937" >1937</option>
                        <option value="1938" >1938</option>
                        <option value="1939" >1939</option>
                        <option value="1940" >1940</option>
                        <option value="1941" >1941</option>
                        <option value="1942" >1942</option>
                        <option value="1943" >1943</option>
                        <option value="1944" >1944</option>
                        <option value="1945" >1945</option>
                        <option value="1946" >1946</option>
                        <option value="1947" >1947</option>
                        <option value="1948" >1948</option>
                        <option value="1949" >1949</option>
                        <option value="1950" >1950</option>
                        <option value="1951" >1951</option>
                        <option value="1952" >1952</option>
                        <option value="1953" >1953</option>
                        <option value="1954" >1954</option>
                        <option value="1955" >1955</option>
                        <option value="1956" >1956</option>
                        <option value="1957" >1957</option>
                        <option value="1958" >1958</option>
                        <option value="1959" >1959</option>
                        <option value="1960" >1960</option>
                        <option value="1961" >1961</option>
                        <option value="1962" >1962</option>
                        <option value="1963" >1963</option>
                        <option value="1964" >1964</option>
                        <option value="1965" >1965</option>
                        <option value="1966" >1966</option>
                        <option value="1967" >1967</option>
                        <option value="1968" >1968</option>
                        <option value="1969" >1969</option>
                        <option value="1970" >1970</option>
    					<option value="1971" >1971</option>
                        <option value="1972" >1972</option>
    					<option value="1973" >1973</option>
    					<option value="1974" >1974</option>
    					<option value="1975" >1975</option>
    					<option value="1976" >1976</option>
    					<option value="1977" >1977</option>
    					<option value="1978" >1978</option>
    					<option value="1979" >1979</option>
    					<option value="1980" >1980</option>
                        <option value="1981" >1981</option>
                        <option value="1982" >1982</option>
                        <option value="1983" >1983</option>
                        <option value="1984" >1984</option>
                        <option value="1985" >1985</option>
                        <option value="1986" >1986</option>
                        <option value="1987" >1987</option>
                        <option value="1988" >1988</option>
                        <option value="1989" >1989</option>
                        <option value="1990" >1990</option>
                        <option value="1991" >1991</option>
                        <option value="1992" >1992</option>
                        <option value="1993" >1993</option>
                        <option value="1994" >1994</option>
                        <option value="1995" >1995</option>
                        <option value="1996" >1996</option>
                        <option value="1997" >1997</option>
                        <option value="1998" >1998</option>
                        <option value="1999" >1999</option>
                        <option value="2000" >2000</option>
                        <option value="2001" >2001</option>
     
     </select>
     </p>
     <!--<img src="img/sep.gif" alt="" vspace="1">-->
     <p>
    <label for="mail">Mail</label>
    <input type="text" name="mail" id="mail" value="<?php if(!empty($_POST['mail'])) { echo htmlspecialchars($_POST['mail'], ENT_QUOTES); } ?>" />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="configuration">Configuration pc (Processor/ 3D graphics card/memory) :</label>
    </p>
    <p>
    <input type="text" name="configuration" id="configuration" value="<?php if(!empty($_POST['configuration'])) { echo htmlspecialchars($_POST['configuration'], ENT_QUOTES); } ?>" />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="internet">Internet broadband :</label>
    <select name="internet" class="select">
                    <option value="<?php echo("$internet"); ?>"><?php echo("$internet"); ?></option>
     
                        <option value="Cable Modem" >Cable Modem</option> 
                        <option value="Dialup" >Dialup</option>
                        <option value="DSL" >DSL</option>
                        <option value="LAN" >LAN</option>
                        <option value="Wireless" >Wireless</option>
                        <option value="Satellite" >Satellite</option>
     
     
     
     </select>
     </p>
    <img src="img/sep.gif" alt="" vspace="1">
    <p>
    <label for="adventure">1) Which was your last adventure game ? </label>
    </p>
    <p>
    <input type="text" name="adventure" id="adventure" value="<?php if(!empty($_POST['adventure'])) { echo htmlspecialchars($_POST['adventure'], ENT_QUOTES); } ?>" />
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="episode">2) Which episode(s) of Sherlock Holmes have you played*? </label>
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="episode" id="episode" value="<?php if(!empty($_POST['episode'])) { echo htmlspecialchars($_POST['episode'], ENT_QUOTES); } ?>" />None
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="finished">3) Which ones have you finished? </label>
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="<?php if(!empty($_POST['finished'])) { echo htmlspecialchars($_POST['finished'], ENT_QUOTES); } ?>" />None
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="">4) If you played a Sherlock Holmes adventure can you describe your favourite scene from one of those Sherlock episodes (200 words limited) ?</label>
    </p>
    <p>
    <textarea name="adventure" id="adventure" rows="2" cols="35"></textarea>
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="">5) What is your favourite adventure game, and can describe in a few sentences why?</label>
    </p>
    <p>
    <textarea name="adventure_game" id="adventure_game" rows="2" cols="35"></textarea>
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="">6) Have you yet participated to a beta test ? if yes, for which game(s)?</label>
    </p>
    <p>
    <textarea name="beta_test" id="beta_test" rows="2" cols="35"></textarea>
    </p>
    <p></div>
    <center>
    	<input type="image" src="img/btn_submit.gif" value="envoyer" onClick="return(TestValidationFormulaire(this.form));"/>
    	</center>
    </p>
    </form>

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    une verification de form se fait sur le onsubmit, sinon elle ne sert pas à grand chose...
    il faut également penser à contre-verifier coté serveur
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    merci ....
    mais par quel script? comment on fait tout ca?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    lis bien la contribution
    et aussi cell là :
    http://www.developpez.net/forums/d55...t=verification
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    c'est bizarre mais je ne comprend vraiment pas le javascript et pourtant je suis obligé de utilisé
    si qualqu'un pouvait me montrer comment réalisé ces ptits script certainement facile et de laissez des commentaires que je puisse un peu comprendre....

    merci

  8. #8
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    <form action="confirmation.php"
    method="post"
    name="formulaire"
    onsubmit="return verif_formulaire();" ....>

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    donc ce qui me donne:
    verification javascript
    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
     
    <script language="javascript">
    function TestValidationFormulaire() { 
       // Récupère tous les éléments du formulaire en cours 
       var RecupElements = eval('document.forms[0].elements'); 
       var IsNone; 
       var IsCorrect; 
       var tmp; 
       // Boucle sur tous les éléments du formulaire 
       for (i = 0; i < RecupElements.length; i++) { 
          // Test pour savoir si le champs est caché 
          if (RecupElements[i].style.display == 'none') { 
             // Passe la variable en caché 
             IsNone = true; 
          } else { 
             IsNone = false; 
          } 
          // Passe la variable à vrai 
          IsCorrect = true; 
          // Passe la variable à vrai 
          IsRadioChecked = false; 
          if (!IsNone) { 
             // Si le champs n'est pas caché 
             switch(RecupElements[i].type) { 
                // Test le type de champs 
                case "text": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus; 
                      IsCorrect = false; 
                   } 
                   break; 
                case "textarea": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus(); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-one": 
                   // Test l'index de la liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-multiple": 
                   // Test l'index de liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false;               } 
                   break; 
                default: 
                   if (!RecupElements[i]) { // Simple 
                      switch(RecupElements[i].type) { 
                         case "checkbox": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                         case "radio": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } else { 
                      switch(RecupElements[i].type) { // Multiple 
                         case "checkbox": 
                            // Récupère l'objet checkbox 
                            var RecupCheckbox = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupCheckbox.length; j++) { 
                               // Test si l'objet est coché 
                               if (!RecupCheckbox[j].checked) { 
                                  alert(Cor_MessageChamps(RecupElements[i].name)); 
                                  IsCorrect = false; 
                                  break; 
                               } 
                            } 
                            break; 
                         case "radio": 
                            // Récupère l'objet radio 
                            var RecupRadio = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupRadio.length; j++) { 
                               // Test si l'objet est coché 
                               if (RecupRadio[j].checked) { 
                                  IsRadioChecked = true; 
                                  break; 
                               } else { 
                                  IsRadioChecked = false; 
                                  tmp = j 
                               } 
                               if (IsRadioChecked) { break } 
                            } 
                            if (!IsRadioChecked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } 
             } 
          } 
          // On repasse la variable en non caché 
          IsNone = false 
          if (!IsCorrect) { 
              // si un champs n'est pas ok on quitte la boucle 
             break; 
          } 
       } 
    }
    </script>
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form action="confirmation.php" method="post" onsubmit="TestValidationFormulaire();" >
    mais le problème aucune verification n'est effectué et ca valide sans champ.
    merci de votre aide

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onsubmit="return TestValidationFormulaire();" >
    c'est pourtant assez clairement expliqué surtout dasn le second lien que je t'ai donné
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  11. #11
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    return IsCorrect;
    à la fin de la fonction aussi

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    toujours validation sans champ donc aucune verification
    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
     
    <script language="javascript">
    function TestValidationFormulaire() { 
       // Récupère tous les éléments du formulaire en cours 
       var RecupElements = eval('document.forms[0].elements'); 
       var IsNone; 
       var IsCorrect; 
       var tmp; 
       // Boucle sur tous les éléments du formulaire 
       for (i = 0; i < RecupElements.length; i++) { 
          // Test pour savoir si le champs est caché 
          if (RecupElements[i].style.display == 'none') { 
             // Passe la variable en caché 
             IsNone = true; 
          } else { 
             IsNone = false; 
          } 
          // Passe la variable à vrai 
          IsCorrect = true; 
          // Passe la variable à vrai 
          IsRadioChecked = false; 
          if (!IsNone) { 
             // Si le champs n'est pas caché 
             switch(RecupElements[i].type) { 
                // Test le type de champs 
                case "text": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus; 
                      IsCorrect = false; 
                   } 
                   break; 
                case "textarea": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus(); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-one": 
                   // Test l'index de la liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-multiple": 
                   // Test l'index de liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false;               } 
                   break; 
                default: 
                   if (!RecupElements[i]) { // Simple 
                      switch(RecupElements[i].type) { 
                         case "checkbox": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                         case "radio": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } else { 
                      switch(RecupElements[i].type) { // Multiple 
                         case "checkbox": 
                            // Récupère l'objet checkbox 
                            var RecupCheckbox = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupCheckbox.length; j++) { 
                               // Test si l'objet est coché 
                               if (!RecupCheckbox[j].checked) { 
                                  alert(Cor_MessageChamps(RecupElements[i].name)); 
                                  IsCorrect = false; 
                                  break; 
                               } 
                            } 
                            break; 
                         case "radio": 
                            // Récupère l'objet radio 
                            var RecupRadio = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupRadio.length; j++) { 
                               // Test si l'objet est coché 
                               if (RecupRadio[j].checked) { 
                                  IsRadioChecked = true; 
                                  break; 
                               } else { 
                                  IsRadioChecked = false; 
                                  tmp = j 
                               } 
                               if (IsRadioChecked) { break } 
                            } 
                            if (!IsRadioChecked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } 
             } 
          } 
          // On repasse la variable en non caché 
          IsNone = false 
          if (!IsCorrect) { 
              // si un champs n'est pas ok on quitte la boucle 
             break;
     
          } 
    	  return(IsCorrect); 
       } 
    }
    </script>
    form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form action="confirmation.php" method="post" onsubmit="return TestValidationFormulaire();" >
    merci pour votre aide et merci de prendre du temps mais j'ai toujours aucun résultat

  13. #13
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    ton return est renvoyé apres le premier champ!-> sors de la boucle

    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!IsCorrect) { 
              // si un champs n'est pas ok on quitte la boucle 
             return false;      }

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    desolé et c'est bizarre mais toujours le meme resultat, je valide sans champ
    le correctif:
    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
     
    <script language="javascript">
    function TestValidationFormulaire() { 
       // Récupère tous les éléments du formulaire en cours 
       var RecupElements = eval('document.forms[0].elements'); 
       var IsNone; 
       var IsCorrect; 
       var tmp; 
       // Boucle sur tous les éléments du formulaire 
       for (i = 0; i < RecupElements.length; i++) { 
          // Test pour savoir si le champs est caché 
          if (RecupElements[i].style.display == 'none') { 
             // Passe la variable en caché 
             IsNone = true; 
          } else { 
             IsNone = false; 
          } 
          // Passe la variable à vrai 
          IsCorrect = true; 
          // Passe la variable à vrai 
          IsRadioChecked = false; 
          if (!IsNone) { 
             // Si le champs n'est pas caché 
             switch(RecupElements[i].type) { 
                // Test le type de champs 
                case "text": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus; 
                      IsCorrect = false; 
                   } 
                   break; 
                case "textarea": 
                   // Test la valeur du champs 
                   if (RecupElements[i].value == "") { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      RecupElements[i].focus(); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-one": 
                   // Test l'index de la liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false; 
                   } 
                   break; 
                case "select-multiple": 
                   // Test l'index de liste 
                   if (RecupElements[i].selectedIndex == -1 || RecupElements[i].selectedIndex == 0) { 
                      alert(Cor_MessageChamps(RecupElements[i].name)); 
                      IsCorrect = false;               } 
                   break; 
                default: 
                   if (!RecupElements[i]) { // Simple 
                      switch(RecupElements[i].type) { 
                         case "checkbox": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                         case "radio": 
                            // Test si l'élément est coché 
                            if(!RecupElements[i].checked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } else { 
                      switch(RecupElements[i].type) { // Multiple 
                         case "checkbox": 
                            // Récupère l'objet checkbox 
                            var RecupCheckbox = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupCheckbox.length; j++) { 
                               // Test si l'objet est coché 
                               if (!RecupCheckbox[j].checked) { 
                                  alert(Cor_MessageChamps(RecupElements[i].name)); 
                                  IsCorrect = false; 
                                  break; 
                               } 
                            } 
                            break; 
                         case "radio": 
                            // Récupère l'objet radio 
                            var RecupRadio = eval('document.forms[0].' + RecupElements[i].name); 
                            // Boucle sur l'objet 
                            for (j = 0; j < RecupRadio.length; j++) { 
                               // Test si l'objet est coché 
                               if (RecupRadio[j].checked) { 
                                  IsRadioChecked = true; 
                                  break; 
                               } else { 
                                  IsRadioChecked = false; 
                                  tmp = j 
                               } 
                               if (IsRadioChecked) { break } 
                            } 
                            if (!IsRadioChecked) { 
                               alert(Cor_MessageChamps(RecupElements[i].name)); 
                               IsCorrect = false; 
                            } 
                            break; 
                      } 
                   } 
             } 
          } 
          // On repasse la variable en non caché 
          IsNone = false 
          if (!IsCorrect) { 
              // si un champs n'est pas ok on quitte la boucle 
            return (false);
    		 break;
     
          } 
    	  return(IsCorrect); 
       } 
    }
    </script>

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    bonjour,

    Voila, j'ai réussi à amélioré mes vérifications javascript mais malheureusement il me reste quelque soucis.
    Des soucis sur les vérification des formulaire checkbox et mail.

    ma fonction javascript:
    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
     
    <script language="javascript">
    function verif_formulaire()
    {
    var info='';
    var index=null;
     if(document.formulaire.name.value == "")  {
       info+='please enter your name\n';
       index=0;
      }
      if(document.formulaire.birth.value == "")  {
      info+='please enter your date of birth!\n';
       if(index==null) index=1;
      }
    /* regexp, ne sais pas comment faire*/
       if(document.formulaire.mail.value == "")  {
       info+='please enter your email valide!\n';
       if(index==null) index=2;
      }
     
     if(document.formulaire.configuration.value == "")  {
       info+='please enter your configuration!\n';
     if(index==null) index=3;
      }
    if(document.formulaire.internet.value == "")  {
       info+='please enter your internet!\n';
     if(index==null) index=4;
      }
     
     if(document.formulaire.last.value == "")  {
     info+='please enter your adventure!\n';
    if(index==null) index=5;
      }
     /* ici j'ai 6 choix possible, je ne vois pas comment gerer ce cas*/
    if(document.formulaire.episode.checked )  {
    info+='please enter your episode!\n';
    if(index==null) index=6;
    }
    /* ici j'ai 6 choix possible, je ne vois pas comment gerer ce cas*/
    if(document.formulaire.finished.checked )  {
    info+='please enter your episode!\n';
     if(index==null) index=7;
    }
     
    if(info.length>0) {
    alert (info);
    document.formulaire.elements[index].focus();
    return false;
    }
    else return true;
    } 
    </script>
    mon formulaire (champ checkbox et mail:
    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
     
    /*champ mail*/
    <label for="mail">Mail</label>
    <input type="text" name="mail" id="mail" size="55" value="<?php if(!empty($_POST['mail'])) { echo htmlspecialchars($_POST['mail'], ENT_QUOTES); } ?>" />
    /*champ checkbox*/==>6 choix et lorsque on appui sur none possibilité effacer les autres:
    <label for="episode">2) Which episode(s) of Sherlock Holmes have you played*? </label>
    </p>
    <p>
    <input type="checkbox" name="episode"  value="The Mystery of the Mummy" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="episode"  value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="episode" value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="episode"  value="Sherlock Holmes versus Arsene Lupin" />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="episode"  value="The Awakened' (remastered edition)" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="episode"  value="None"  />None
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="finished">3) Which ones have you finished? </label>
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="The Mystery of the Mummy" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="Sherlock Holmes versus Arsene " />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="The Awakened' (remastered edition)" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="finished" id="finished" value="None" />None
    merci pour ceux qui voudront bien m'apporter leurs aide.
    mon problème gerer les choix checkbox et mail.

  16. #16
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for(indice=0;indice<document.formulaire.episode.length;indice++)
    {
     if(document.formulaire.episode[indice].checked){...}
    }
    pour l'email, fais une recherche

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    merci pour votre réponse.
    la vérification s'effectue quand toutes les cases sont cochés.

    script:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    for(indice=0;indice<document.formulaire.episode.length;indice++)
    {
     if(document.formulaire.episode[indice].checked){
     info+='please enter your episode!\n';
     	if(index==null) index=6;}
    }
     
    for(indice=0;indice<document.formulaire.finished.length;indice++)
    {
     if(document.formulaire.episode[indice].checked){
     info+='please enter your finished!\n';
     	if(index==null) index=7;}
    }

  18. #18
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    ce bout de code incomplet ne permet pas de cerner le problème.

    Par exemple, ces quoi "index" ??

    Quelle sont les conditions pour que la verif soit OK ? KO ?

    Bref ... un peu plus de détails ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    desolé, jez le compléte.
    ma fonction
    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
     
    <script language="javascript">
    function verif_formulaire()
    {
    var adresse_email = document.formulaire.mail.value;
    var arobase = adresse_email.indexOf("@");
    var point = adresse_email.indexOf(".",arobase);
    var mauvais_endroit_point = arobase+1;
    var double_point = adresse_email.indexOf("..",arobase);
    var nbre_carac = adresse_email.length - point;
    var double_arobase = adresse_email.indexOf("@",arobase+1);
    var info='';
    var index=null;
     
     if(document.formulaire.name.value == "")  {
       	info+='please enter your name\n';
       	index=0;
      }
      	if(document.formulaire.birth.value == "")  {
      		info+='please enter your date of birth!\n';
       		if(index==null) index=1;
      }
      		if ( (arobase < 1) ||  
        		(point <= mauvais_endroit_point) || 
        		(adresse_email.length < 5) || 
        		(double_point >= 0) ||
        		(nbre_carac < 3) ||
        		(double_arobase >= 0) )  {
       			info+='please enter your email valide!\n';
       			if(index==null) index=2;
      		}
     
     if(document.formulaire.configuration.value == "")  {
       	info+='please enter your configuration!\n';
     	if(index==null) index=3;
      }
    if(document.formulaire.internet.value == "")  {
       	info+='please enter your internet!\n';
     	if(index==null) index=4;
      }
     
     if(document.formulaire.last.value == "")  {
     	info+='please enter your last!\n';
    	if(index==null) index=5;
      }
     
    for(indice=0;indice<document.formulaire.episode.length;indice++)
    {
     if(document.formulaire.episode[indice].checked){
     info+='please enter your episode!\n';
     	if(index==null) index=6;}
    }
     
    for(indice=0;indice<document.formulaire.finished.length;indice++)
    {
     if(document.formulaire.episode[indice].checked){
     info+='please enter your finished!\n';
     	if(index==null) index=7;}
    }
     
    if(info.length>0) {
    	alert (info);
    	document.formulaire.elements[index].focus();
    	return false;
    	}
    else return true;
    } 
    </script>
    le probléme je n'arrive pas a recuperer les checkbox et en cas ca soit none de enlevé toutes les cases coché

    le formulaire:
    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
    <form name="formulaire" id="formulaire" action="confirmation.php" method="post"  onsubmit="return(verif_formulaire);"  >
     
    <input type="checkbox" name="episode"  value="The Mystery of the Mummy" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="episode"  value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="episode" value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="episode"  value="Sherlock Holmes versus Arsene Lupin" />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="episode"  value="The Awakened' (remastered edition)" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="episode"  value="None"  />None
    </p>
    <!--<img src="img/sep.gif" alt="" vspace="1">-->
    <p>
    <label for="finished">3) Which ones have you finished? </label>
    </p>
    <p>
    <input type="checkbox" name="finished"  value="The Mystery of the Mummy" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="finished"  value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="finished"  value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="finished"  value="Sherlock Holmes versus Arsene " />Sherlock Holmes versus Arsene Lupin
    </p>
    <p>
    <input type="checkbox" name="finished"  value="The Awakened' (remastered edition)" />The Awakened' (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="finished"  value="None" />None
    merci de votre aide

Discussions similaires

  1. Exécuter fonction après verif formulaire
    Par spawns dans le forum jQuery
    Réponses: 4
    Dernier message: 02/10/2014, 10h23
  2. [POO] Double verification de formulaire javascript
    Par romann76 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 14/01/2009, 08h08
  3. fonction de verification de formulaire
    Par jayfaze dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/04/2007, 18h05
  4. Boucle JavaScript pour verif de formulaire
    Par VooDooNet dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 19/09/2006, 17h34
  5. Réponses: 5
    Dernier message: 11/08/2006, 09h38

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