GESTION DE 2 SELECT MULTIPLE - COMPATIBLE IE & FF

Signaler
Messages postés
2
Date d'inscription
jeudi 10 novembre 2005
Statut
Membre
Dernière intervention
21 mars 2006
-
tiflo7411
Messages postés
1
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
22 juin 2011
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/36104-gestion-de-2-select-multiple-compatible-ie-ff

tiflo7411
Messages postés
1
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
22 juin 2011

Bonjour à tous !!

Vous voulez encore plus simple ? Je ne suis pas un expert, mais j'ai trouvé un truc pas tant mal ! (Je sais le dernier post date un peu... mais bon si ça peut aider certains...)

En fait, dans votre formulaire, au lieu d'avoir les lignes du <select> comme ceci '<option>Option 1</option>', préciser l'attribut value="", ce qui nous donne ==> '<option value="Option 1">Option 1</option>'. Et sans faire de checkbox en javascript ou quoi, quand vous lancer votre formulaire et que vous faites un print_r() de la liste, vous vous apercevrez qu'il vous affichera bien les value de votre select :)

Bonne journée et continuation à tous !
Dav_c
Messages postés
194
Date d'inscription
dimanche 25 janvier 2004
Statut
Membre
Dernière intervention
11 décembre 2015

merci
zerros
Messages postés
4
Date d'inscription
samedi 13 septembre 2003
Statut
Membre
Dernière intervention
26 février 2017

Bonjour,

J'ai un souci avec ce fonctionnement. J'ai un formulaire me permettant d'envoyer un certain nombre de champs à uns script php.
Le hic, c'est qu'ayant déjà un formulaire, il m'est inpossible d'imbriquer le formulaire de ce code dans mon formulaire existant.

N'étant pas fortiche en javascript, Je voudrai savoir comment dois-je proceder pour ajouter ces deux listes dans mon formulaire existant ?

J'espère que vous pourrez m'aider.
biologie20002000
Messages postés
1
Date d'inscription
lundi 14 janvier 2008
Statut
Membre
Dernière intervention
3 août 2008

bonjour,
un bon script. moi ma question : est ce que c'est possible de conservé autrement dit de sauvgarder la selection même apres fermeture de la fenetre. comme si on fait un cookie sur la selection.
si quelqu'un à une idée ça va m'aidé dans mon select que je veux utiliser pour mon site.
merci
cs_djtale
Messages postés
5
Date d'inscription
mardi 17 juin 2003
Statut
Membre
Dernière intervention
12 juin 2008

Bonjour,

je voulais savoir conserver dans le select de gauche les éléments que l'on passe dans le select de droite..
Mo objectif est en fait de pouvoir mettre dans le select de droite plusieurs fois le même élément.

Merci bcp.
scat
Messages postés
4
Date d'inscription
samedi 2 juillet 2005
Statut
Membre
Dernière intervention
10 avril 2008

Nickel, c'est ce que je cherchais par flemme de le coder. Je n'ai pas rencontré de problèmes sous IE 7.
Merci.
mibolan
Messages postés
5
Date d'inscription
mardi 18 avril 2006
Statut
Membre
Dernière intervention
26 décembre 2007

Et pour IE 7 pourquoi ça marche pas ?
ridhasag
Messages postés
4
Date d'inscription
vendredi 2 avril 2004
Statut
Membre
Dernière intervention
6 décembre 2007

Lors que j'ai définie des valeurs pour les options du select:"liste_champs" j'ai pu récupérer les valeurs
merci
BiBi FocK
Messages postés
10
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
25 août 2008

Si tes options ont été définies avec leur 'value' renseigné cela ne devrait pas pauser de problème...
ridhasag
Messages postés
4
Date d'inscription
vendredi 2 avril 2004
Statut
Membre
Dernière intervention
6 décembre 2007

D'après ce que j'ai compris du script, les valeurs de la liste "selection" sont définies après une phase de selection
BiBi FocK
Messages postés
10
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
25 août 2008

As-tu bien définies les valeurs de tes options??

exemple:
<option value="1">test 1</option>
ridhasag
Messages postés
4
Date d'inscription
vendredi 2 avril 2004
Statut
Membre
Dernière intervention
6 décembre 2007

Salut à tous

Très bon script, mais je ne parviens pas à récupérer les valeurs de "selection". en fait
j'ajoute un bouton pour recupérer les valeurs
le code est le suivant :

et puis dans la page destination j'écrit:
<?

$Col = $_POST['selection'];
print_r($Col);
foreach($Col as $ss){
//affichage des valeurs sélectionnées
echo "$ss
";}

?>

mais ça donne::
Array ( [0] => [1] => [2] => [3] => )
et donc le résultat est vide .
est ce que qcq a une idée?
Merci
mibolan
Messages postés
5
Date d'inscription
mardi 18 avril 2006
Statut
Membre
Dernière intervention
26 décembre 2007

Je parlais bien de les déclarer dans la liste de sélection (liste de droite). C'est fait et effectivement ça marche très bien comme ça... Je pensais que cela serait plus compliqué.
Merci en tout cas pour ce script qui me sert beaucoup !
BiBi FocK
Messages postés
10
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
25 août 2008

Par présélection, tu entends: donner le focus au champs ou les placés dans la liste sélection??

- si tu parles de la liste sélection il te suffit de les déclarer à dans la liste de ton choix à l'intérieur de la page html ;)
- Pour leur donner le focus, de rajouter l'option selected lors de la déclaration des options qui t'intéressent
mibolan
Messages postés
5
Date d'inscription
mardi 18 avril 2006
Statut
Membre
Dernière intervention
26 décembre 2007

Bonjour bonjour,

Par rapport à la sélection multiple comment à partir ce votre code faire une présélection ?
BiBi FocK
Messages postés
10
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
25 août 2008

ranyounaa,

Pour ton tableau vide, est-ce que tu as bien défini une valeur pour tes options??
(exemple: value="1")
ranyounaa
Messages postés
5
Date d'inscription
mardi 30 mai 2006
Statut
Membre
Dernière intervention
30 mai 2006

au lieu, de faire un chekbox, j'ai un autre code qui permet de basculer entre les deux listes, puis j'ai repris la fonction select_all et ca marche!!!
si jamais kelkun en a besoin, faites moi signe.
je pourrais pas mettre tout le code car mon select contient des acces à la base assez compliké, et ca me prendra du temps de tout separer.
bon courage et encore merci!!!!
NewSky
Messages postés
86
Date d'inscription
dimanche 27 janvier 2002
Statut
Membre
Dernière intervention
20 février 2009

j'ai oublié queque chose d'important : lors de la création des chekbox, il ne faut surtout pas oublié de les créer cochés :

document.getElementById('mon_div').innerHTML+="

sinon, évidement, ça marche pas!!
NewSky
Messages postés
86
Date d'inscription
dimanche 27 janvier 2002
Statut
Membre
Dernière intervention
20 février 2009

Pour ma aprt, voilà comment j'ai fait :

lors de l'envoie du formulaire, je parcours la 2ème liste en créant pour chaque item trouvé un ckeckbox coché auquels je donne la valeur de l'option :

function chekbx(){
nbr_item=document.mon_formulaire.mon_select.lenght;

for(i=0;i<nbr_item;i++){
value_item=document.mon_formulaire.mon_select.options[i].value;
document.getElementById('mon_div').innerHTML+=";
}
}

dans le html
<form ... onsubmit="chekbx">




</form>

--------------------------------------------------------------------------------------------

Voilà, c'est peut-être de la bidouille, mais ça fonctionne très bien.
ranyounaa
Messages postés
5
Date d'inscription
mardi 30 mai 2006
Statut
Membre
Dernière intervention
30 mai 2006

ca va sembler bizarre; kan j enleve, les otions ne sont plus dans la selection.
kan j ajoute, je vois dans la liste les valeurs ajoutées mais elles ne sont pas envoyer avec le formulaire.
c normal??
un peu d'aide svp, j ai l impression de parler seule!!!
ranyounaa
Messages postés
5
Date d'inscription
mardi 30 mai 2006
Statut
Membre
Dernière intervention
30 mai 2006

je viens d'utiliser la fonction print-r et voila le resultat Array ( [0] => [1] => )
donc les champs sont vides
ranyounaa
Messages postés
5
Date d'inscription
mardi 30 mai 2006
Statut
Membre
Dernière intervention
30 mai 2006

excusez, j aurai du voir l exemple.
mon pb, c'est ke mainant les champs que je recupere sont vide.
et ce ke kelkun aurait une idée???
ranyounaa
Messages postés
5
Date d'inscription
mardi 30 mai 2006
Statut
Membre
Dernière intervention
30 mai 2006

svp,
ca fait longtemps ke je galere.
j ai deux listes. on peut basculer entre elles et ja sais pas comment recuperer les nouvelles valeurs de la lsite.
j'ai vu la fonction select_all mais j'ai pas su ou l ytiliser et kel parametres lui donner.
un peu d aide svp
NewSky
Messages postés
86
Date d'inscription
dimanche 27 janvier 2002
Statut
Membre
Dernière intervention
20 février 2009

Oups, pardon, j'aurais mieu fais de tester avant de poster!!! Ce que j'ai dit précédement est totalement faux. Je vais réfléchier un peu plus!!! Encore désolé.
NewSky
Messages postés
86
Date d'inscription
dimanche 27 janvier 2002
Statut
Membre
Dernière intervention
20 février 2009

pour ARK41, je sais pas si tu as réussi à récupérer les données de la liste. En tout cas, pour les autres, il faut nommer son contrôle avec des crochets :
<select name="ma_liste[]">
De cette façon, tu envoies bien un tableau de valeurs et non pas une seule variable.
cdamour
Messages postés
3
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
24 juillet 2007

Salut à tous

Très bon script mais ne fonctionne pas correctement sous IE7.
Dans la liste de droite, les valeurs ne sont pas affichées.

Bonne journée
BiBi FocK
Messages postés
10
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
25 août 2008

Salut ARK41,

Normalement, si tout se passe correctement lors de l'envoie du formulaire lorsque tu fait un :
echo $_POST['selection']

tu devrais voir Array s'afficher.

Lorsque tu a un problème avec un tableau tu peux utiliser la fonction print_r()(ici print_r($_POST['selection']); ) pour visualiser le contenu de ton tableau.

Sinon, essai :

echo $_POST['selection'][0];

cela devrait marché un peu mieux ;).

tcho
ark41
Messages postés
1
Date d'inscription
lundi 27 mars 2006
Statut
Membre
Dernière intervention
5 avril 2006

Salut Bibi Fock,

Je n'arrive toujours pas à récupérer les données grâce au select_all() ...
Je pense que ma façon n'est pas la bonne. Voici la manière dont j'essai de récupérer le tableau "selection"

echo $_POST['selection[0]');

@+
BiBi FocK
Messages postés
10
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
25 août 2008

Utilise la fonction select_all() juste avant d'envoyer ton formulaire.

Cette fonction permet de modifier le nom des select et de sélectionner tous les champs. Ainsi l'on peut récupérer le contenu des différents champs sous forme de tableau.

tcho
cs_jojoloulou
Messages postés
2
Date d'inscription
jeudi 10 novembre 2005
Statut
Membre
Dernière intervention
21 mars 2006

ce code est bien fait,
mais, j'arrive pas a recuperer les valeur de "selection"
quand je fait $_POST['selection'](en php) j'ai simplement la derniere valeur!
si kkun peut m'aider c sympa
@+