bonjour,
j'ai un formulaire avec plusieurs listes déroulantes, par rapoort au choix de la premiere , la deuxieme liste affiche uniquement les données qui correspondent, je sélectionne un choix dans la 2eme, la 3eme liste affiche ce qu"elle doit afficher ...etc.... j'ai en tout 4 listes déroulantes qui reliées sont à MySQL par php,
je voulais savoir si mon choix doit se porter sur Javascript ou y aurait il une autre méthode plus efficace ?
Si je garde la javascript, dois je créer d'autre fonctions ou je réutilise la meme ?
Dans ma page, j'ai actuellement 2 listes déroulantes qqui fonctionne parfaitement,
Merci pour vos conseils,
Voici le début de ma page:
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118 <html> <head> <title>Document sans titre</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script language=javascript> function modifcombo(){ document.location.replace("ajout.php?gam=" + document.form1.lib_gam.value ); document.form1.lib_gam.value = $gam; } </script>; </head> <body> <?php if (isset($_GET['gam'])){ $gam = $_GET['gam']; } else { $gam = NULL; } ?> <form name="form1" method="post" action="valide.php"> <table bgcolor="#ffe7c0" border="0"> <tbody> <caption style="font-weight: bold;" valign="top" align="center"><big>Ajout d'un produit<br> <br> </big></caption> <tr> <td style="text-align: left; font-weight: bold;"><font color="#ff6000"> Gamme :</font></td> <td><select name="lib_gam" class="txt16-000000" onChange="javascript : modifcombo()"> <option value=""></option> <?php $dbhost="localhost"; $dblogin="xxxxxxx"; $dbpassword="xxxxxxxx"; $dbname="xxxxxxx"; mysql_connect($dbhost,$dblogin,$dbpassword); mysql_select_db($dbname); $ma_req = "SELECT * FROM gamme;"; $res_req = mysql_query($ma_req) or die("Selection table \"gamme\" impossible"); if (mysql_num_rows($res_req)!=0) { // résultat non vide while ($une_ligne = mysql_fetch_array($res_req)) { $id_gam = $une_ligne["id_gam"]; $lib_gam = $une_ligne["lib_gam"]; print "<option value=" . $id_gam; if ($id_gam == $gam) { print " selected"; } print ">" . $lib_gam ."</option>"; } } ?> </select> </td> </tr> <tr> <td style="text-align: left; font-weight: bold;"><font color="#ff6000">Famille : </font></td> <td><select name="lib_niveau1" class="txt16-000000"> <option value=""></option> <?php // Connexion à la base $dbhost="localhost"; $dblogin="xxxxxx"; $dbpassword="xxxxxxx"; $dbname="xxxxxxxxx"; mysql_connect($dbhost,$dblogin,$dbpassword); mysql_select_db($dbname); $ma_req = "SELECT * FROM niveau1 WHERE id_gam = '$gam';"; $res_req = mysql_query($ma_req) or die("Selection table \"niveau1\" impossible"); if (mysql_num_rows($res_req)!=0) { // résultat non vide while ($une_ligne = mysql_fetch_array($res_req)) { $id_gam = $une_ligne["id_gam"]; $lib_niveau1 = $une_ligne["lib_niveau1"]; print "<option value=" . id_gam . ">" . $lib_niveau1 . "</option>"; } } ?> ............. suite du formulaire
Partager