Hello.
Je cherche comment génerer un menu déroulant à partir d'un formulaire.
J'ai pensé à utiliser une boucle for() mais là je coince .
Voici le code que j'ai rédigé et qui aparament ne marche pas
Le code de la page où il ya le formulaire avec les champs dynamiques
Mapage.html

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script>
function create_champ(i) {
var i2 = i + 1;
document.getElementById('add1_'+i).innerHTML = 'Nom: <input type="text" size="15"  name="name_'+i+'" ></span>&nbsp;Valeur: <input name="value_1" size="24" type="text" id="flux_'+i+'" />';
document.getElementById('add1_'+i).innerHTML += (i <= 10) ? '<br /><span id="add1_'+i2+'" style="font-family=Arial; size:10px;"><a href="javascript:create_champ('+i2+')">Ajouter un champ</a></span>' : '';
document.forms['myform'].elements['nb_champs'].value="" +i+ ""; 
}
</script>
<form name="myform" method="post" action="valid.php">
 
Nom: <input name="name_1" type="text" id="name_1" size="15" >
Value: <input name="value_1" type="text" id="flux_1" size="24"><br/>
<span id="add1_2"><a href="javascript:create_champ(2)">Ajouter un champ</a></span><br />
<input type="submit" value="valider">
</form>

Et pour la page php pour générer mon menu déroulant
valid.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
foreach($_POST as $key => $value) {
   if(!isset($$key)) 
        $$key = $value;
}
 
$select = '<select name="myselect" >
    <option value="'.$value.'_1">'.$name.'_1</option>';
for( $i=2; $i<=$nb_champs; $i++) {
 $select .= '<option value="'.$value.'_'.$i.'">'.$name.'_'.$i.'</option>' ."\n";
}
echo $select . '</select>;
?>

Mais là dans le script de validation je coince, ca ne marche pas ...
J'espère que j'étais assez clair ...

Merci