IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

extraire valeur liste multiple


Sujet :

Langage PHP

  1. #21
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai essayer plein de chose et rien ne fonctionne. Je suis repartie à sa:
    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
    <form role="form" id="modif" action="reqUpd.php" method="post">
    <table>
                      <tr>
                        <td>
                          <label>liste1</label>
                          <select id="liste1" name="liste1" multiple size= "6" class="form-control">
                            <?php 
    // requete select liste 1
     
                              while($ligne1= $res1->fetch()):
                            ?>
                            <option value="<?php echo $ligne1['id1']?>"><?php echo $ligne1['libelle']?></option> 
                            <?php
                              endwhile;
                            ?>
                          </select>
                        </td>
                        <td>
                          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                          <input type="button" value="Ajouter >>>" class="btn btn-success" onClick="Deplacer(this.form.liste1,this.form.liste2)">
                          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                          </br>
                          </br>
                          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                          <input type="button" value="&lt;&lt;&lt; Enlever" class="btn btn-success" onClick="Deplacer(this.form.liste2,this.form.liste1)">
                          &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                        </td>
                        <td>
                          <label>liste2</label>
                          <select id="liste2" name="liste2" multiple size="6" class="form-control">
                            <?php 
                              //requete select liste 2
     
                              while($ligne2= $res2->fetch()):
                            ?>
                            <option value="<?php echo $ligne2['id2']?>"><?php echo $ligne2['libelle']?></option>
                            <?php
                              endwhile;
                            ?>
                          </select>
                        </td>
                      </tr>
                    </table>
    Le problème je pense c'est comme on a rien de sélectionné dans les listes, il ne trouve pas les valeurs. Comme c'est une liste à bascule on ne peut rien sélectionner. il faut récup le contenu des deux

  2. #22
    Invité
    Invité(e)
    Par défaut
    On peut voir le code généré ("Ctrl" + "U") ?

    "à bascule" ? ça veut dire quoi ?
    Où est le script js qui permet cette "bascule" ?

  3. #23
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    script js:
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      <SCRIPT LANGUAGE="JavaScript">
      function Deplacer(l1,l2) {
          if (l1.options.selectedIndex>=0) {
            o=new Option(l1.options[l1.options.selectedIndex].text,l1.options[l1.options.selectedIndex].value);
            l2.options[l2.options.length]=o;
            l1.options[l1.options.selectedIndex]=null;
          }else{
            alert("Aucune activité sélectionnée");
          }
        }
      </SCRIPT>

  4. #24
    Invité
    Invité(e)
    Par défaut
    J'ai posé 3 questions.

    Tu ne réponds pas à la 1ère.

    N.B. A un moment donné, il faudrait :
    • expliquer clairement ce que tu veux
    • nous dire comment tu t'y prends actuellement
    • montrer le code NECESSAIRE ET SUFFISANT (pas juste des bouts de code par-çi, par-là...)

  5. #25
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <FORM name="formulaire">
    Pas d'action ? Pas de method ?
    Pas de bouton submit ?

    [EDIT] ayant testé le code, il n'y a en effet aucune option "selected", susceptible d'être récupérée en PHP.

    Il faudrait (je pense), au submit du form, ajouter "selected" sur toutes les options (de chaque liste), via JavaScript.

  6. #26
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form role="form" id="modif" action="reqUpd.php" method="post">

  7. #27
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai réussi à récupérer le contenu de ma seconde liste !!!
    Maintenant ma requête ne s'exécute pas !!!
    Comment on fait pour voir les erreurs de problème d'exécution de requête car elle fonctionne quand je l'a met sous phpmyadmin

  8. #28
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut
    J'ai trouvé une fonction en javascript qui me sélectionne toute ma liste 2
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function selectAllOptions(selStr)
    {
      var selObj = document.getElementById(selStr);
      for (var i=0; i<selObj.options.length; i++) {
        selObj.options[i].selected = true;
      }
    }

  9. #29
    Invité
    Invité(e)
    Par défaut
    Voilà une solution :
    Code javascript : 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
    <script type="text/javascript">
    	function Deplacer(id1,id2) {
    		var l1 = document.getElementById(id1);
    		var l2 = document.getElementById(id2);
    		var selok = false;
    		for(var i=0; i<l1.options.length; i++){
    			if (l1.options[i].selected) {
    				selok = true;
    				var newopt = new Option(l1.options[i].text, l1.options[i].value, true, false);
    				l2.options[l2.options.length] = newopt;
    				l1.options[i] = null;
    			}
    		}
    		if(!selok){
    			alert("Aucune activité sélectionnée");
    		}
    	}
    	function selectAlloptions(id)
    	{
    	  var selObj = document.getElementById(id);
    	  for (var i=0; i<selObj.options.length; i++) {
    		selObj.options[i].setAttribute('selected','selected');
    	  }
    	}
    	function envoiForm(){
    		selectAlloptions('idliste1');
    		selectAlloptions('idliste2');
    		document.formulaire.submit();
    		return true;
    	}
    </script>

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <form name="formulaire" method="post" action="" onsubmit="envoiForm();return false;">
     
    	<select id="idliste1" name="liste1[]" size="6" style="width:120px;" multiple="multiple">
    <?php // ........ ?>
    	</select>
     
    	<input type="button" value="Ajouter &gt;&gt;&gt;" onclick="Deplacer('idliste1','idliste2')" />
     
    	<input type="button" value="&lt;&lt;&lt; Enlever" onclick="Deplacer('idliste2','idliste1')" />

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	<script type="text/javascript">
    		// Astuce pour Netscape qui ne supporte pas style="width:100"
    		// Donc : création d'une ligne pour initialiser la largeur puis suppression par ce javascript
    		document.getElementById('idliste2').options.length = 0;
    	</script>
    Le "petit plus" : on peut sélectionner plusieurs options en même temps.
    Dernière modification par Invité ; 28/01/2014 à 14h33.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. extraire valeur liste déroulante
    Par Twiggy94 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 20/02/2015, 16h28
  2. récupérer valeurs liste multiple
    Par Fench dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 03/12/2008, 17h39
  3. [JSP] Récup valeurs liste html à choix multiples
    Par spiritusss dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 21/02/2006, 16h03
  4. [Conception] inserer des valeurs provenant d'une liste multiple
    Par digger dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 24/11/2005, 17h35
  5. recuperer valeur liste choix multiple
    Par gabychon dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 13/06/2005, 11h47

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