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 :

contrôle de saisie menu déroulant


Sujet :

JavaScript

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Points : 65
    Points
    65
    Par défaut contrôle de saisie menu déroulant
    Bonjour.

    j'ai créé plusieur contrôle de saisie pour mon formulaire

    Voici mes contrôles de saisie (qui marchent) pour mes boutons radios et mes champs à remplir

    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
     
     
    <SCRIPT language="javascript">
     
    function testvalidation()
    {
     var ok = false; 
     for (i in document.formSI.elements["civilite"])
       {
           if (document.formSI.elements["civilite"][i].checked)
           { 
               ok = true;
               break; 
           }
     
                } 
     
               if (!ok) 
               alert("Vous devez renseigner une civilité"); 
     
    if(document.formSI.nom.value == "") 
    { 
    alert ('veuillez entrer votre Nom'); 
    document.formSI.nom.focus(); 
    return false;
    } 
     
    if(document.formSI.prenom.value == "") 
    { 
    alert ('veuillez entrer un prenom'); 
    document.formSI.prenom.focus();
    return false; 
    }
     
    if(document.formSI.jnais.value == "")
    { 
    alert ('veuillez entrer un jour');
    document.formSI.jnais.focus();
    return false; 
    }
     
    if(document.formSI.mnais.value == "")
    { 
    alert ('veuillez entrer un mois');
    document.formSI.mnais.focus();
    return false; 
    }
     
    if(document.formSI.annais.value =="")
    { 
    alert ('veuillez entrer un année');
    document.formSI.annais.focus();
    return false; 
    }
     
    else {return true;}
    }
    et voici mon menu déroulant:

    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
     
     
    <form name="formSI" action="StagiaireInscriptionIdentification.php" method="post"  onSubmit="return testvalidation()" enctype="multipart/form-data" >
     
    ...
     
      <td width="29%" align="right"><b><font size="2">Date de naissance</font></b></td>
              <td width="15%"><font size="2"><select name="jnais">
                               				<option value="" selected>--jour--</option>
     
    										<?php
                                                                    $nb_jour=01;
                                                                                    while ($nb_jour<32)
                                                                                    {
                                                                                    echo "<option value=$nb_jour>$nb_jour </option>";
                                                                                    $nb_jour=$nb_jour+1;
                                                                                    }
                                                                                    ?>
                  							</select></font></td>
              <td width="18%"><font size="2"><select name="mnais">
                               				            <option value="" selected>---mois---</option>
                  										<option value="01">Janvier</option>
                  										<option value="02">Février</option>
                  										<option value="03">Mars</option>
                  										<option value="04">Avril</option>
                  										<option value="05">Mai</option>
                  										<option value="06">Juin</option>
                  										<option value="07">Juillet</option>
                  										<option value="08">Août</option>
                  										<option value="09">Septembre</option>
                  										<option value="10">Octobre</option>
                  										<option value="11">Novembre</option>
                  										<option value="12">Décembre</option>
                  										</select></font></td>
              <td width="38%"><font size="2"><select name="annais"  onChange="CheckData()">
    										<option value="" selected>---Année---</option>
     
    										<?php
                                                                                    $nb_an=1952;
                                                                                    while($nb_an<1989)
                                                                                    {
                                                                                    echo "<option value=$nb_an>$nb_an </option>";
                                                                                    $nb_an=$nb_an+1;
                                                                                    }
                                                                                    ?>
                               				</selected></font></td>
    pour la partie "mois" sur mon menu déroulant je vois comment faire mon contrôle de saisie car toutes les propositions sont marquées dans le code.

    En revenche, je ne sais pas comment faire pour les parties "jour" et "année" (à moins de faire 150 lignes de codes mais je préfèrerais ne pas avoir à en venir là)
    De plus, je doute de la compatibilité entre javascript et php du coup je ne sais plus trop quoi faire...

    Merci d'avance pour votre aide.

  2. #2
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut Re: contrôle de saisie menu déroulant
    Citation Envoyé par shnouf
    En revenche, je ne sais pas comment faire pour les parties "jour" et "année" (à moins de faire 150 lignes de codes mais je préfèrerais ne pas avoir à en venir là)
    Précisement, quelle est la question????

  3. #3
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    tu veux verifier le 31 février par exemple ?

    sert toi d'un objet date javascript, tu lui affecte ce qu'il y a dans les listes il changera automatiquement de mois

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Points : 65
    Points
    65
    Par défaut
    je veux tout simplement faire un contrôle de saisie sur l'année et le jour (pour mon menu déroulant).
    sur le mois j'y arrive vu que que toutes les valeurs sont ennumérées une par une dans le code de ma liste déroulante, mais en ce qui concerne le jour et le mois j'ai été obligé d'intégrer du code php pour ne pas avoir 31 lignes pour les jours 70 lignes pour les années.

    donc je voudrais savoir si il est possible d'utiliser javascript avec php et si c'est le cas comment puis-je faire pour mettre mon contrôle de saisie pour mon menu déroulant sur le jour et l'année.

  5. #5
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    que veut tu controler ?
    ca sera plus simple

  6. #6
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Salut,

    Teste si le selectedIndex = 0. Si oui c'est que rien n'est sélectionné sinon une sélection est faite.

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Points : 65
    Points
    65
    Par défaut
    je veux contrôler si la personne a bien renseigné, dans le formulaire, sa date de naissance soit le code suivant :
    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
     
    <td width="29%" align="right"><b><font size="2">Date de naissance</font></b></td>
              <td width="15%"><font size="2"><select name="jnais">
                               				<option value="" selected>--jour--</option>
     
    										<?php
                                                                    $nb_jour=01;
                                                                                    while ($nb_jour<32)
                                                                                    {
                                                                                    echo "<option value=$nb_jour>$nb_jour </option>";
                                                                                    $nb_jour=$nb_jour+1;
                                                                                    }
                                                                                    ?>
                  							</select></font></td>
              <td width="18%"><font size="2"><select name="mnais">
                               				            <option value="" selected>---mois---</option>
                  										<option value="01">Janvier</option>
                  										<option value="02">Février</option>
                  										<option value="03">Mars</option>
                  										<option value="04">Avril</option>
                  										<option value="05">Mai</option>
                  										<option value="06">Juin</option>
                  										<option value="07">Juillet</option>
                  										<option value="08">Août</option>
                  										<option value="09">Septembre</option>
                  										<option value="10">Octobre</option>
                  										<option value="11">Novembre</option>
                  										<option value="12">Décembre</option>
                  										</select></font></td>
              <td width="38%"><font size="2"><select name="annais"  onChange="CheckData()">
    										<option value="" selected>---Année---</option>
     
    										<?php
                                                                                    $nb_an=1952;
                                                                                    while($nb_an<1989)
                                                                                    {
                                                                                    echo "<option value=$nb_an>$nb_an </option>";
                                                                                    $nb_an=$nb_an+1;
                                                                                    }
                                                                                    ?>
    on peut remarqué qu'il y a un bout de code en HTML(soit le mois) et du code en php (soit le jour et l'année)
    j'arrive très bien à contrôler le mois (vue que c'est une liste déroulante, en html ) avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(document.formSI.mnais.value == "") 
    { 
    alert ('veuillez entrer un mois'); 
    document.formSI.mnais.focus(); 
    return false; 
    }
    mais le jour et l'année sont plus compliqués à contrôler que le mois, vue que c'est du php

    et ma question est : comment pourrais je contrôler si l'utilisateur a bien precisé ou non, le jour et l'année, de sa dâte de naissance dans ce formulaire?

    voilà

  8. #8
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Citation Envoyé par franculo_caoulene
    Salut,

    Teste si le selectedIndex = 0. Si oui c'est que rien n'est sélectionné sinon une sélection est faite.

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Points : 65
    Points
    65
    Par défaut
    je ne sais pas ce qu'est selectedIndex ni comment l'utiliser

  10. #10
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if(document.formSI.mnais.selectedIndex == 0)
    {
    alert ('veuillez entrer un mois');
    document.formSI.mnais.focus();
    return false;
    }
    Applicable aux autres aussi

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 155
    Points : 65
    Points
    65
    Par défaut
    c'est ce que j'ai fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
     
    if(document.formSI.jnais.selectedIndex == 0)
    { 
    alert ('veuillez entrer un jour');
    document.formSI.jnais.focus();
    return false; 
    }
    Je pense que le problème vient du bou de code de php ci dessous car en faisant ça je n'ai plus rieb qui apparraît dans ma liste alors que normalement le nombre de jours y apparaît.

    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
     
     
    <td width="29%" align="right"><b><font size="2">Date de naissance</font></b></td>
              <td width="15%"><font size="2"><select name="jnais">
              <option value="" selected>--jour--</option>
     
                 <?php
                 $nb_jour=01;
                 while ($nb_jour<32)
                 {
                 echo "<option value= ".$nb_jour.">".$nb_jour." </option>";
                 $nb_jour=$nb_jour+1;
              }
               ?>
                  																	<
                </select></font></td>

  12. #12
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
                 $nb_jour=1;
                 while ($nb_jour<32)
                 {
                  $nbj = $nb_jour < 10 ? "0".$nb_jour : $nb_jour;
                 echo "<option value= '".$nbj."'>".$nbj." </option>";
                 $nb_jour=$nb_jour+1;
              }

Discussions similaires

  1. [XL-2003] Contrôle de saisie liste déroulante
    Par gripoil dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/01/2013, 15h16
  2. Réponses: 7
    Dernier message: 06/06/2008, 22h16
  3. [MySQL] Formulaire menu déroulant – réafficher variable saisie
    Par encore_php dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/02/2008, 15h54

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