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 :

recuperer la valeur d'un champ de type select


Sujet :

JavaScript

  1. #1
    Membre actif
    Inscrit en
    Décembre 2010
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 67
    Par défaut recuperer la valeur d'un champ de type select
    bonjour tlm,
    je sais pas si c'est ici de mettre que je met mon problème puisque il contient du javascript et du php
    après une longue recherche je n'arrive pas à trouver une réponse claire pour mon problème

    ce scripts permet de basculer des champs d'une select vers une autre
    je veux maintenant récupérer les valeurs basculées dans la 2 éme select pour l'insérer un par un dans ma base de données


    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
         <html>
         <head>
         <SCRIPT LANGUAGE="JavaScript">
         function Deplacer(l1,l2)
         {
         for (i=0; i < l1.options.length ; i++)
         {
         if (l1.options[i].selected && l1.options[i]!= "" )
         {
         // alert ("toto");
         // alert(l1.options[i].text);
         // alert(l1.options[i].value);
         o=new Option(l1.options[i].text,l1.options[i].value);
         l2.options[l2.options.length]=o;
         l1.options[i]=null;
         i = i -1 ;
         }
         else
         {
         // alert("Aucun élément sélectionné");
         }
         }
         }
     
         function DeplacerTout(l1,l2)
         {
         for (i=0; i < l1.options.length ; i++)
         {
     
         // alert ("toto");
         // alert(l1.options[i].text);
         // alert(l1.options[i].value);
         o=new Option(l1.options[i].text,l1.options[i].value);
         l2.options[l2.options.length]=o;
         l1.options[i]=null;
         i = i -1 ;
         }
         }
     
         function menuswitch(menu, way)
         {
         // Init
         var menumax = menu.length -2;
         var menusel = menu.selectedIndex;
     
         // Debordement
         if ((menusel < 0) || (menusel < 1 && way == -1) || (menusel > menumax && way == 1)) { return false; }    
        // Permutation
         tmpopt = new Option( menu.options[menusel+way].text, menu.options[menusel+way].value );
     
         menu.options[menusel+way].text = menu.options[menusel].text;
         menu.options[menusel+way].value = menu.options[menusel].value;
         menu.options[menusel+way].selected = true;
     
         menu.options[menusel].text = tmpopt.text;
         menu.options[menusel].value = tmpopt.value;
         menu.options[menusel].selected = false;
         return true;
         }
     
         function menusubmit(menu1,menu2)
         {
         var menulen1 = menu1.length;
         for (i=0; i < menulen1; i++)
         {
         menu1.options[i].selected = true;
         }
         var menulen2 = menu2.length;
         for (j=0; j < menulen2; j++)
         {
         menu2.options[j].selected = true;
         }
         }
         //-->
         </SCRIPT>
         </head>
         <body>
         <?php
       // Paramètres de la Connexion à la base MYSQL
       $user="root";
       $host="localhost";
       $password="";
       $database="test";
       $connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
     
       mysql_select_db($database,$connexion);
     
       $rq="Select * from script_categorie order by designation;";
       $result= mysql_query ($rq) or die ("Select impossible");
     
       ?>
         <FORM name="formulaire" action="page.php" method"get" onSubmit="javascript:menusubmit(formulaire.listselect,formulaire.listunselect)">
         <table border="0" cellpadding="0" cellspacing="1" width="400" height="150" bgcolor="#808080" >
         <tr>
         <td height="120" width="200">
         <select name="listunselect" multiple width="200" size="10" OnDblClick="javascript:Deplacer(this.form.listunselect,this.form.listselect)" style="width:180px;font:normal Trebuchet MS;font-size: 9px;">
         <?php
            while($var=mysql_fetch_array($result)){
            echo'<OPTION value="Planche"> '.$var["designation"].' </OPTION>
                            ' ;     
            
            
            }
            ?>
         </select>
         </td>
         <td height="120" width="50" align="center">
         <input value="&nbsp;>&nbsp;" type="button" OnClick="javascript:Deplacer(this.form.listunselect,this.form.listselect)"><br>
         <input value="&nbsp;<&nbsp;" type="button" OnClick="javascript:Deplacer(this.form.listselect,this.form.listunselect)"><br>
         <input value=">>" type="button" OnClick="javascript:DeplacerTout(this.form.listunselect,this.form.listselect)"><br>
         <input value="<<" type="button" OnClick="javascript:DeplacerTout(this.form.listselect,this.form.listunselect)">
         </td>
         <td height="120" width="200">
         <select name="listselect" multiple size="10" width="200" OnDblClick="javascript:Deplacer(this.form.listselect,this.form.listunselect)" style="width:180px;font:normal Trebuchet MS;font-size: 9px;">
         <OPTION value="10">----------------------</OPTION>
         </select>
     
         </td>
         <td height="120" width="50" align="center">
         <input value="&nbsp;/\&nbsp;" type="button" onClick="javascript:menuswitch(this.form.listselect, -1)"><br>
         <input value="&nbsp;\/&nbsp;" type="button" onClick="javascript:menuswitch(this.form.listselect, 1)">
         </td>
         </tr>
         <tr>
         <td height="30" width="400" colspan= 4 align="center"><input name="bSave" type="submit" value="Valider" style="width:180px;font:normal Trebuchet MS;font-size: 9px;"></td>
         </tr>
         </table>
         <SCRIPT language="javascript">
         // création d'une ligne pour initialiser la largeur puis suppression par ce javascript
         document.formulaire.listselect.options.length=0;
         </SCRIPT>
         </form>
     
         </body>
     
         </html>
    si quelqu'un peut m'aider je serais très très reconnaissant

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198

  3. #3
    Membre actif
    Inscrit en
    Décembre 2010
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 67
    Par défaut
    oui j'ai trouvé ça mais le problème lorsque je met les [] le javascript ne fonctionne pas et il m'affiche une ligne dans la 2 éme liste

    je crois qu'il faut mettre les [] dans le select et dans le code javascript! je sais pas où exactement
    merci

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    oui j'ai trouvé ça mais le problème lorsque je met les [] le javascript ne fonctionne pas et il m'affiche une ligne dans la 2 éme liste
    attention au erreur de syntaxe.

    Les [] appartiennent au nom donc il faut écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select name="listselect[]" multiple
    ensuite partout dans ta page il te faut remplacer les this.form.listselect par des this.form['listselect[]']

    et sur l'initialisation mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    //document.formulaire.listselect.options.length=0;
    document.formulaire['listselect[]'].options.length=0;
    Pendant que l'on y est
    - remplaces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <SCRIPT LANGUAGE="JavaScript">
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">
    - supprimes javascript: sur les événements, cela est sous entendu et passe le total en minuscule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select name="listselect[]" multiple size="10" width="200" ondblclick="Deplacer(this.form['listselect[]'],this.form.listunselect)"
    - mets les styles dans la partie STYLE de ta page et non pas dans les balises...

  5. #5
    Membre actif
    Inscrit en
    Décembre 2010
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 67
    Par défaut
    bonjour NoSmoking,
    merci pour ton aide ^^

    je te mets le code après modif

    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
         <html>
         <head>
         <SCRIPT LANGUAGE="JavaScript">
         function Deplacer(l1,l2)
         {
         for (i=0; i < l1.options.length ; i++)
         {
         if (l1.options[i].selected && l1.options[i]!= "" )
         {
         // alert ("toto");
         // alert(l1.options[i].text);
         // alert(l1.options[i].value);
         o=new Option(l1.options[i].text,l1.options[i].value);
         l2.options[l2.options.length]=o;
         l1.options[i]=null;
         i = i -1 ;
         }
         else
         {
         // alert("Aucun élément sélectionné");
         }
         }
         }
     
         function DeplacerTout(l1,l2)
         {
         for (i=0; i < l1.options.length ; i++)
         {
     
         // alert ("toto");
         // alert(l1.options[i].text);
         // alert(l1.options[i].value);
         o=new Option(l1.options[i].text,l1.options[i].value);
         l2.options[l2.options.length]=o;
         l1.options[i]=null;
         i = i -1 ;
         }
         }
     
         function menuswitch(menu, way)
         {
         // Init
         var menumax = menu.length -2;
         var menusel = menu.selectedIndex;
     
         // Debordement
         if ((menusel < 0) || (menusel < 1 && way == -1) || (menusel > menumax && way == 1)) { return false; }    
        // Permutation
         tmpopt = new Option( menu.options[menusel+way].text, menu.options[menusel+way].value );
     
         menu.options[menusel+way].text = menu.options[menusel].text;
         menu.options[menusel+way].value = menu.options[menusel].value;
         menu.options[menusel+way].selected = true;
     
         menu.options[menusel].text = tmpopt.text;
         menu.options[menusel].value = tmpopt.value;
         menu.options[menusel].selected = false;
         return true;
         }
     
         function menusubmit(menu1,menu2)
         {
         var menulen1 = menu1.length;
         for (i=0; i < menulen1; i++)
         {
         menu1.options[i].selected = true;
         }
         var menulen2 = menu2.length;
         for (j=0; j < menulen2; j++)
         {
         menu2.options[j].selected = true;
         }
         }
         //-->
         </SCRIPT>
         </head>
         <body>
         <?php
       // Paramètres de la Connexion à la base MYSQL
       $user="root";
       $host="localhost";
       $password="";
       $database="test";
       $connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
     
       mysql_select_db($database,$connexion);
     
       $rq="Select * from script_categorie order by designation;";
       $result= mysql_query ($rq) or die ("Select impossible");
     
       ?>
         <FORM name="formulaire" action="page.php" method"get" onSubmit="javascript:menusubmit(formulaire.listselect[],formulaire.listunselect)">
         <table border="0" cellpadding="0" cellspacing="1" width="400" height="150" bgcolor="#808080" >
         <tr>
         <td height="120" width="200">
         <select name="listunselect" multiple width="200" size="10" OnDblClick="javascript:Deplacer(this.form.listunselect,this.form['listselect[]'])" style="width:180px;font:normal Trebuchet MS;font-size: 9px;">
         <?php
            while($var=mysql_fetch_array($result)){
            echo'<OPTION value="Planche"> '.$var["designation"].' </OPTION>
                            ' ;     
            
            
            }
            
            ?>
         </select>
         </td>
         <td height="120" width="50" align="center">
         <input value="&nbsp;>&nbsp;" type="button" OnClick="javascript:Deplacer(this.form.listunselect,this.form['listselect[]'])"><br>
         <input value="&nbsp;<&nbsp;" type="button" OnClick="javascript:Deplacer(this.form['listselect[]'],this.form.listunselect)"><br>
         <input value=">>" type="button" OnClick="javascript:DeplacerTout(this.form.listunselect,this.form['listselect[]'])"><br>
         <input value="<<" type="button" OnClick="javascript:DeplacerTout(this.form['listselect[]'],this.form.listunselect)">
         </td>
         <td height="120" width="200">
         <select name="listselect[]" multiple size="10" width="200" ondblclick="Deplacer(this.form['listselect[]'],this.form.listunselect)" style="width:180px;font:normal Trebuchet MS;font-size: 9px;">
         <OPTION value="10">----------------------</OPTION>
         </select>
     
         </td>
         <td height="120" width="50" align="center">
         <input value="&nbsp;/\&nbsp;" type="button" onClick="javascript:menuswitch(this.form['listselect[]'], -1)"><br>
         <input value="&nbsp;\/&nbsp;" type="button" onClick="javascript:menuswitch(this.form['listselect[]'], 1)">
         </td>
         </tr>
         <tr>
         <td height="30" width="400" colspan= 4 align="center"><input name="bSave" type="submit" value="Valider" style="width:180px;font:normal Trebuchet MS;font-size: 9px;"></td>
         </tr>
         </table>
         <SCRIPT language="text/javascript">
         // création d'une ligne pour initialiser la largeur puis suppression par ce javascript
         document.formulaire['listselect[]'].options.length=0;
         </SCRIPT>
         </form>
        <?php
            foreach($listselect as $variable) {
    echo $variable.'<br/>';
    }
     
            
            ?>
         </body>
     
         </html>

    si tu test tu va voir que sur la 2 éme select ( le 2 éme blog) il y a toujours une ligne noire je comprends pas pourquoi elle apparait

    pour le foraech j'arrive pas à la mettre en place je sais pas en faite ou je la met! je veux lorsque je clique sur le boutton valider le les variables s'affichent l'une après l'autre de cette façon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    1= la première variable de la selection
    2= la deuxième variable
    .
    .
    .
    ect
    merci encore pour ton aide

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Citation Envoyé par Chedi Voir le message
    si tu test tu va voir que sur la 2 éme select ( le 2 éme blog) il y a toujours une ligne noire je comprends pas pourquoi elle apparait
    oui mais j'ai signalé
    Pendant que l'on y est
    - remplaces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <SCRIPT LANGUAGE="JavaScript">
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">
    et NON par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <SCRIPT language="text/javascript">
    la directive n'est pas reconnue donc non exécutée

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/04/2011, 16h27
  2. recuperer la valeur d'un champ de type select
    Par Chedi dans le forum Langage
    Réponses: 8
    Dernier message: 12/03/2011, 11h11
  3. recuperer la valeur de 2 champs dans un 3eme champs
    Par nouar dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/01/2006, 12h14
  4. comment recuperer deux valeurs de deux champs input
    Par trialrofr dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/02/2005, 22h08
  5. Réinitialiser les valeurs d'un champ de type identify
    Par Oluha dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 19/01/2005, 13h39

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