z980x
Messages postés897Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention26 juillet 2007
-
25 janv. 2007 à 19:50
z980x
Messages postés897Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention26 juillet 2007
-
26 janv. 2007 à 20:03
Bonjour à tous,
dans le cadre d'un projet pour mes études, j'ai besoin de récupérer les données d'un select grace à un formulaire.
En fait, j'ai deux listes. Quand je clique sur la première, cela déplace l'item cliqué dans la deuxieme liste.
J'aimerais récupérer toutes les infos qui sont dans la seconde liste, grace à formulaire, pour voir les traiter ensuite...
Mais je ne sais pas comment faire pour passer un "select" dans un formulaire, pour que l'on puisse traiter chaque élement dans le code php qui traite le formulaire.
z980x
Messages postés897Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention26 juillet 20072 26 janv. 2007 à 20:03
Bon,
j'ai réussi à faire ce que je voulais, mais j'ai opté pour une solution "bricolage", parce que je n'arrivais vraiment pas à faire fonctionner les autres trucs...
Voici comment j'ai fait:
Attaché à mon bouton de formulaire, un code javascript, pour mettre dans un input hidden les éléments de la liste, séparés par des espaces:
var i = 0;
for(i=0; i<document.getElementById('list2').options.length;i++){
document.getElementById('lsteleves').value = document.getElementById('lsteleves').value +" "+ list2.options[i].value;
}
document.formgroupe.submit();
Ensuite, dans le code PHP, je récupère le champ hidden, je le splitte et il se mets donc dans un tableau... Ensuite, un parcours classique de tableau, ca ya pas de problème...
$tableau_mots = split(" +",trim($ligne));
//Le + c'est dans le cas ou il y a plusieurs espaces à la suite...
for($i=0;$i<sizeof($tableau_mots);$i++) {// tant que $i est inferieur au nombre d'éléments du tableau...
echo $tableau_mots[$i].'
'; // on affiche l'élément du tableau d'indice $i
}
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 26 janv. 2007 à 09:39
Bonjour,
un select EST un élément de formulaire, au même titre qu'un input. Tu dois juste choisir un select multiple, qui te renverra une variable post tableau. Le reste (passer une ligne d'un select à l'autre) c'est du javascript.
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 26 janv. 2007 à 09:50
Quoique, en relisant ce que tu dis je ne crois pas que tu veuilles utiliser un select... tu utiliseras plutot un javascript qui se déclenche au moment de la soumission du formulaire et qui ira enregistrer les données dans une variable tableau html du type tableau[].
Regarde du côté de getElementById().value = 'valeur'; en javascript
z980x
Messages postés897Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention26 juillet 20072 26 janv. 2007 à 10:14
Salut,
premièrement, merci pour ta réponse.
Malheureusement, j'ai du mal m'exprimer... Je t'explique à nouveau:
le passage d'une liste à l'autre est déja effectué, ca, en javascript, pas de problème.
Mais j'aimerais passer la liste de droite en paramètre dans le post... Mais je ne veux pas que ce soit une liste à sélection multiple...
Il me faudrait un truc du style:
$list = $POST_['maliste'];
for ...
echo $list[i];
...
Comment faire???
Merci
Philippe
Vous n’avez pas trouvé la réponse que vous recherchez ?
Evangun
Messages postés1980Date d'inscriptiondimanche 20 février 2005StatutMembreDernière intervention24 septembre 20124 26 janv. 2007 à 11:29
Oui, c'est ce que j'ai compris dans mon second post...
quand tu passes d'une liste à l'autre tu enregistres la valeur dans une variable javascript. Et au moment de la soumission tu transfères cette valeur dans le formulaire (un simple input text 'maliste' suffira je pense ?)
Après, faut voir quelle est la façon la plus propre... je ne sais pas si
for...
getElementById('maliste')[].value = 'valeur';
...
pourrait marcher... bon mais peu importe l'idée est là.