Bonjour
J'ai Deux listes multiples "SelectDM" et "Col1".
Quand je selectionne une valeur dans la première(SelectDM) elle s'affiche sur la deuxième(Col1).
Jusqu'à ici tout va bien.Mais j'arrive pas à récupérer les valeurs de la liste Col1 pour faire des traitements en php.Au lieu d'afficher les valeurs sélectionnées il affiche à la place de chaque valeur le mot "texte".
Je remplis la liste Col1 avec des valeurs qui disparaissent par la suite.
je suis vraiment perdu, votre aide svp.
Voila mon code:
<HTML>
<HEAD>
<TITLE> Saisie D1</TITLE>
<SCRIPT LANGUAGE="JavaScript">
function Ajouter(form) {
var o=new Option(form.selectDM.value,form.valeur.value);
form.Col1.options[form.Col1.options.length]=o;
}
function PostSelect(liste){
// On compte le nombre d'item de la liste select
NbCol1 = document.forms[liste].elements.Col1.length;
// On lance une boucle pour selectionner tous les items
for(a=0; a<NbCol1; a++){
document.forms[liste].elements.Col1.options[a].selected = true;
}
// On modifie l'ID du champ select pour que PHP traite cette
// dernière comme un array
document.forms[liste].elements.Col1.name = "Col1[]";
// On soumet le formulaire
document.forms[liste].submit();
}
</SCRIPT>
</HEAD>
<BODY>
<FORM name="formulaire" onSubmit="PostSelect(this.name)" method="post" action="#">
<SELECT name="selectDM" onChange="Ajouter(this.form)" >
<option value="">Ligne initiale</option>
<option value="AA">AA</option>
<option value="BB">BB</option>
<option value="CC">CC</option>
<option value="DD">DD</option>
</SELECT>
<BR><BR>
<INPUT type="button" Value="Ajouter" onClick="Ajouter(this.form)">
<BR><BR>
<select name="Col1" multiple style="border:none;width: 150px" size=9 class="style1" align=top>
</select>
<input name="Envoyer" type="submit" value="afficher" />
<BR>
</FORM>
<?php
if(isset($_POST['Col1']) && !empty($_POST['Col1'])){
$Col1_Array = $_POST['Col1'];
foreach($Col1_Array as $selectValue){
echo $selectValue."<br>";
}
}
?>
</BODY>
</html>