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

Résolu
zabroska Messages postés 37 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 28 août 2008 - 8 juil. 2008 à 16:56
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 - 9 juil. 2008 à 09:25
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

cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
9 juil. 2008 à 08:33
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>
3
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
8 juil. 2008 à 17:10
Sans code, on va pas deviner l'erreur
0
zabroska Messages postés 37 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 28 août 2008
8 juil. 2008 à 17:26
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.
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
8 juil. 2008 à 17:29
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 !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
zabroska Messages postés 37 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 28 août 2008
8 juil. 2008 à 17:34
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.
0
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
8 juil. 2008 à 17:36
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.
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
8 juil. 2008 à 17:46
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 !
0
zabroska Messages postés 37 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 28 août 2008
9 juil. 2008 à 09:14
Merci Jeca!
C'est exactement ce que je cherchais, il ne me reste plus qu'à l'accorder avec mon code.
Encore merci.
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
9 juil. 2008 à 09:25
Re,

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

a++

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