Récupérer toutes les valeurs d'une liste remplie avec une autre [Résolu]

Signaler
Messages postés
37
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
28 août 2008
-
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
-
Bonjour,
voila mon petit problème :
J'ai une liste contenant des noms de sociétés et une deuxième qui est vide au départ.
Grâce à un script JS, j'arrive à passer les sociétés d'une liste à l'autre mais le problème est que je n'arrive pas à récupérer en php les valeurs de la deuxième liste qui a été remplie.
Quelqu'un aurait-il une solution à ce problème?
Merci d'avance.

9 réponses

Messages postés
341
Date d'inscription
mercredi 17 juillet 2002
Statut
Membre
Dernière intervention
14 juillet 2011
12
Bonjour,

Un exemple :

<?php
if(isset($_POST['post']))
{
echo 'valeurs sélectionnées :
';
foreach($_POST['select'] as $valeur)
{
echo $valeur . '
';
}
}
?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<script type="text/javascript">
function transfert(src, dest)
{
if (src.options[src.selectedIndex].value == 0)
return;

var nouveau = new Option(src.options[src.selectedIndex].text, src.options[src.selectedIndex].value);
dest.options[dest.length] = nouveau;
src.options[src.selectedIndex] = null;
}

function ctrlForm(formulaire)
{
with (formulaire)
{
var cible = elements['select[]'];
var nb = cible.length;
for(var i = 0; i < nb ; i ++)
{
cible.options[i].selected = 'selected';
}

submit();
}
}
</script>
</head>

<form name="saisie" method="post" action="" onsubmit="ctrlForm(this);">
Disponibles,
,
Sélectionnées,

----

<select name="dispo" style="width : 150px;">
<option value="0">-- Sélectionnez --</option>
<option value="1">valeur 1</option>
<option value="2">valeur 2</option>
<option value="3">valeur 3</option>
<option value="4">valeur 4</option>
<option value="5">valeur 5</option>
<option value="6">valeur 6</option>
<option value="7">valeur 7</option>
<option value="8">valeur 8</option>
<option value="9">valeur 9</option>
</select>,
" onclick="transfert(this.form.elements['dispo'], this.form.elements['select[]'])" />

,
<select name="select[]" multiple="multiple" style="width : 150px;">
</select>,

----


</form>

</html>
Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
Sans code, on va pas deviner l'erreur
Messages postés
37
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
28 août 2008

Voila le code des deux listes :

<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;">
                        </select>
                    </td>
                    <td height="120" width="50" align="center">
                        &nbsp;" type="button" OnClick="javascript:Deplacer(this.form.listunselect,this.form.listselect)">

                       

                        >" type="button" OnClick="javascript:DeplacerTout(this.form.listunselect,this.form.listselect)">

                       
                    </td>
                    <td height="120" width="200">
                        <?php
                            $ds = ldap_connect ("localhost");
                            if ($ds)
                            {
                                ldap_set_option ($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
                                ldap_bind ($ds, $dn, $pwd);
                                echo '<select name="listselect" multiple size="10" width="200" onkeydown="return liDown(this);" OnDblClick="javascript:Deplacer(this.form.listselect,this.form.listunselect)" style="width:180px;font:normal Trebuchet MS;font-size: 9px;">';
                                $sr = ldap_search ($ds, "dc=test,dc=testtest", "c=*");
                                $nb = ldap_get_entries ($ds, $sr);
                                $NB=$nb ["count"];
                                sort($nb);
                                for ($j=1; $j < $NB+1; $j++){
                                    $sr1 = ldap_list ($ds, "c=".$nb[$j]["c"][0].",dc=test,dc=testtest", "objectclass=organizationalUnit");
                                    $nb1 = ldap_get_entries ($ds, $sr1);
                                    $NB1=$nb1 ["count"];
                                    sort($nb1);
                                    for ($i=1; $i < $NB1+1; $i++)
                                        {
                                            echo "<option value='".$nb1[$i]["ou"][0]."'>".$nb1[$i]["ou"][0]."</option>";
                                        }
                                    }
                                echo "</select>";
                            }
                            else
                            {
                            echo "Impossible de se connecter au serveur LDAP";
                            }
                            ldap_close ($ds);
                        ?>
                    </td>
                </tr>

Si quelqu'un sait comment faire??
Merci d'avance.
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
30
Salut,

Peus tu au moins nous mettre en rouge la partie qui bug ?

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
37
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
28 août 2008

Aucune partie de ce code bug.
Mon problème est de récupérer les valeurs que j'ajoute au fur et à mesure dans la liste "unselect". Je ne sais pas du tout comment faire. J'arrive à afficher les valeurs mais juste quand elles sont selectionnées dans la liste.
Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
Pour récuperer des valeurs en php, il faut passer par un formulaire, ou dans ton cas, jouer avec de l'ajax pour transmettre au serveur les valeurs.
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
30
oui, c'est ce que je voulais dire...

Je t'aurai bien proposé le tuto sur ajax de toutjavascript.com qui expliquait comment faire mais je viens d'essayer d'y aller et même la page d'accueil de tout javascript.com a disparu !

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
37
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
28 août 2008

Merci Jeca!
C'est exactement ce que je cherchais, il ne me reste plus qu'à l'accorder avec mon code.
Encore merci.
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
30
Re,

Dans ce cas met jeca en réponse acceptée !

a++

Si la réponse vous convient, pensez : Réponse acceptée !