Aller au contenu

Choix d'un élement dans liste et actu. d'une autre


Sujets conseillés

Posté

Salut : J'ai encore un gros problème :blush:

Le problème : J'ai une liste ( Select ) avec les noms des salles informatiques. Lorsque je sélectionne une salle je dois actualiser une autre avec la liste des livres que contient la salle.

D'abord je dois charger les données (en php) dans des tableaux javascript, ensuite à chaque fois que je clique sur une salle dans la liste 1 il va actualiser la liste 2.

Vous avez des idées, pistes pour résoudre ce problème ??

Merci beaucoup :)

Posté (modifié)

Salut :)

Tu devrais te tourner vers l'AJAX ;)

Ce site web te montre d'ailleurs un exemple que tu pourrais adapter à ta situation: tu choisis un departement, le serveur retourne une liste des codes postaux, tu choisis ton code postal, et le serveur te retourne ta ville... cool non ? ^_^^_^

Modifié par MS-DOS_1991
Posté

de quelle taille sont toute tes listes?

parce que si tu veux faire cela en javascript sans soumission au serveur (au lieu de ajax comme proposé), il faut rapporter toutes les valeurs disponibles dans des champs cachés du formulaire...

Si l'on reprends l'histoire des codes postaux, charger l'intégralité du découpage administratif de la France en champs caché dans ton formulaire... cela va te couter cher en bande passante :P

Posté (modifié)

Ce que tu peux faire c'est faire dans une table mysql tout d'abord ta liste de salles informatique, dans une autre table tu mets 2 champs ou plus mais 2 champs obligatoires, un champ livre et un champ salle ou se trouve le livre.

Après quand il n'y aucun champ qui est selectioné tu faits afficher le premier formulaire et que celui là.

Par exemple if($champ=='')

{

formulaire

}

et si une salle est choisis

elseif($champ == 'salle2')

{

//requêtes sql pour trouver les livres de la salle 2

}

etc..

;)

Pour ajax je ne connais pas donc je te propose cette soluce que je connais.

:)

Ah oui j'oubliais tu faits passer les paramètres via l'url, et avec un code js pour faire varier directement l'url sans appuyer sur un bouton envoyer.

Modifié par snwoman49
Posté

d'abord, merci pour vos réponses :)

J'essaye actuellement de fusionner l'idée de optgroup avec ce problème. Je m'explique :

Le but est d'avoir deux listes : Une de type choix unique et l'autre avec choix multiple. Celle avec choix unique va contenir la liste des salles et celle d'en dessous (choix multiple) la liste des livres groupés par des optgroup avec le caption des nums des salles.

Or, je sais absolument pas comment défiler une liste à choix multiple pour qu'elle pointe un optgroup sélectionné :blush:

Avez vous une petite idée là dessus ?

Je vous remercie encore :)

Posté

Salut stone essaie de mettre une pierre à l'édifice en codant en béta ce que tu souhaites car là j'ai pas trop compris.

Désolé pour le jeux de mots je n'ai pas pu m'enpêcher :lol:

Posté

Voici un exemple :

<form name="ss" method="post" action="toto.php">
<select>
<option>salle 1</option>
<option>salle 2</option>
<option>salle 3</option>
</select>
<select name="livres[]" multiple="multiple">
<optgroup label="Salle 1">
 <option value="1">Livre 1</option>
 <option value="2">Livre 2</option>
 <option value="3">Livre 3</option>
 <option value="4">Livre 4</option>
</optgroup>
<optgroup label="Salle 2">
 <option value="5">Livre 5</option>
 <option value="6">Livre 6</option>
 <option value="7">Livre 7</option>
 <option value="8">Livre 8</option>
</optgroup>
<optgroup label="Salle 3">
 <option value="9">Livre 9</option>
 <option value="10">Livre 10</option>
 <option value="11">Livre 11</option>
 <option value="12">Livre 12</option>
</optgroup>
</select>

Donc quand je sélectionne salle 2 dans la première liste dans la deuxième il va se positionner sur <optgroup label="Salle 2">.

Je crois que c'est faisable en javascript mais je n'ai aucune idée :blush:

Posté

Bonjour,

Si tu veux faire ca en php, tu n'a pas 36 solutions, il faut recharger la page (ou en changer) pour construire ta liste de livres en fonction du choix de la salle.

Si tu veux faire ca en javascript, ce doit être faisable mais je n'ai pas la solution, désolé. Fait une recherche sur des sites comme l'editeurjavascript.com ou toutjavascript.com sur le mot clé "selectedindex", tu trouvera ton bonheur :)

Et tiens nous au courant

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...