bonjour, je ne connais pas bien javascript, je le bricole un peu, mais la je seche hihi
enfaite, j' ai fait un formulaire de recherche par regions, par departement, et pas villes sur un site d' annonces pour un client : http://sexy-annonces.fr/annonces.php
Vous pouvez tester sur firefox sa marche tres bien, mais internet explorer sa veut pas, et chez mon client non plus, javascript est pourtant activé apriori
Le code :
Les fonctions
Appel aux fonctions
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 <?php //liste des regions de france function regions() { include 'includes/mysql.php'; $regions=mysql_query("SELECT * FROM region ORDER BY region ASC"); $num_regions=mysql_num_rows($regions); if ($num_regions) { ?> <select name="regions" onclick="document.getElementById('region').disabled='true'"> <option value="" id="region">Sélectionner région</option> <?php while ($r=mysql_fetch_array($regions)) { if (isset($_GET['region']) && $_GET['region']==$r['id']) { echo '<option value="'.$r['id'].'" onclick="document.location=\''.$_SERVER['PHP_SELF'].'?region='.$r['id'].'\'" selected="selected">'.$r['region'].'</option>'; } else { echo '<option value="'.$r['id'].'" onclick="document.location=\''.$_SERVER['PHP_SELF'].'?region='.$r['id'].'\'">'.$r['region'].'</option>'; } } ?> </select> <?php } } // liste les departements selon la région selectionnée function dept() { include 'includes/mysql.php'; $region=$_GET['region']; if (isset($_GET['dept'])) { $departement=$_GET['dept']; } $dept=mysql_query("SELECT * FROM departement WHERE id_region='$region' ORDER BY departement ASC"); $num_dept=mysql_num_rows($dept); //$nom_region=mysql_query("SELECT * FROM region WHERE id='$region'"); //$n_r=mysql_fetch_assoc($nom_region); if ($num_dept) { ?> <select name="dept" onclick="document.getElementById('dept').disabled='true'"> <option value="" id="dept">Sélectionner département</option> <?php while ($d=mysql_fetch_array($dept)) { if ($departement==$d['id']) { echo '<option value="'.$d['id'].'" onclick="document.location=\''.$_SERVER['PHP_SELF'].'?region='.$region.'&dept='.$d['id'].'\'" selected="selected">'.$d['departement'].'</option>'; } else { echo '<option value="'.$d['id'].'" onclick="document.location=\''.$_SERVER['PHP_SELF'].'?region='.$region.'&dept='.$d['id'].'\'">'.$d['departement'].'</option>'; } } ?> </select> <?php } } // Liste les villes correspondantes aux départements function ville() { include 'includes/mysql.php'; $region=$_GET['region']; $departement=$_GET['dept']; $ville=mysql_query("SELECT * FROM ville WHERE id_departement='$departement' ORDER BY ville ASC"); $num_ville=mysql_num_rows($ville); //$nom_region=mysql_query("SELECT * FROM region WHERE id='$region'"); //$n_r=mysql_fetch_assoc($nom_region); if ($num_ville) { ?> <select name="ville" onclick="document.getElementById('ville').disabled='true'"> <option value="" id="ville">Sélectionner ville</option> <?php while ($v=mysql_fetch_array($ville)) { if ($_GET['ville']==$v['id']) { echo '<option value="'.$v['id'].'" onclick="document.location=\''.$_SERVER['PHP_SELF'].'?region='.$region.'&dept='.$departement.'&ville='.$v['id'].'\'" selected>'.$v['ville'].'</option>'; } else { echo '<option value="'.$d['id'].'" onclick="document.location=\''.$_SERVER['PHP_SELF'].'?region='.$region.'&dept='.$departement.'&ville='.$v['id'].'\'">'.$v['ville'].'</option>'; } } ?> </select> <?php } } ?>
Voila, désolé pour la tartine ...
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 <?php regions(); if (isset($_GET['region']) && $_GET['region']!="") { dept(); } if (isset($_GET['dept']) && $_GET['dept']!="") { ville(); } ?>
Et merci par avance pour vos reponses !
Partager