par
Axel » 08 juin 2006, 18:43
salut
tu peux le faire en AJAX mais je ne sais pas si c'est réellement utile car il semble que dans tes champs tu mettes à chaque fois les memes caractéristiques.
Donc je procèderais comme cela en premier lieu:
1. je récupère les différentes caractéristiques et créant une variable qui contient le code html pour faire une liste déroulante:
<?php
$select = '<select name="caracteristique">';
$sql2 = mysql_query ("SELECT * FROM caracteristique");
while($req2 = mysql_fetch_array ($sql2))
{
$select .= '<option>'. stripslashes($req2['car_lib']).'</option>';
}
$select .= '</select>';
?>
2. j'intègre ce code html dans une variable javascript:
<script>
<!--
var champSelect = <?= $select ?> ;
-->
</script>
3. dans le contenu même de la page, lorsque le client à choisir un article, je mettrais un champ du type
donner le nb de caractéristiques : <input type="text" value="0" onchange="creer_liste_deroul(this.value)" />
<div id="affichListe"></div><!-- calque vide qui va faire l'affichage des listes mais qui sera rempli par la fonction creer_liste_deroul -->
4. et enfin la fonction qui créer l'affichage des liste
<script>
function creer_liste_deroul( x ){
var text_liste="";
for( i= 0; i < x ; i++){
text_liste + = champSelect ;//concatenate x fois le code html d'une liste deroulante
}
document.getElementById('affichListe').innerHTML = text_liste;
}
</script>
Voilà l'ordre des choses pour faire, je pense, ce que tu veux mais il faut un peu adapter car j'ai répondu rapidement