Bonjour,
A force de chercher sur divers forums une solution pour mon problème j'ai réussi à créer ce bout de code qui répond +/- à mes besoins mais j'ai un sérieux problème et je pense que du Javascript pourrait m'aider, malheureusement je ne sais pas comment coder ce code ci dessous en java.
Je m'explique: je voudrais afficher une picklist via un select suivant l'option choisie dans la première picklist.
Ca fonctionne très bien sauf que pour que ça marche j'ai dû utiliser la fonction submit sur mon premier onchange. Résultat mon formulaire est envoyé alors qu'il n'est pas complet...
Biensûr ceci est du PHP mais je suppose que je dois créer une fonction en javascript (d'où ma question ici) que je déclare dans mon onchange et lorsque la fonction est appelée, elle vérifie dans la DB les options du premier select. Le but étant d'afficher les modèles de véhicules suivant la marque de voiture que l'on a choisie.
En plus à cause du submit de la première picklist le nom de la marque ne s'affiche jamais puisque le formulaire est rafraichi à chaque fois
Est-il possible de remplacer ces onchange/submit par une fonction javascript ??? Je sais bien que le javascript s'exécute côté client mais j'imagine qu'il est possible de faire un query sql vers le serveur lorsque la fonction est exécutée, non ? Au pire charger toutes les données de la DB (vu qu'il n'y a pas non plus des milliers de modèles et de marques) et de n'afficher que ce dont on a besoin...
PS: je suis nul en javascript
Code php : 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 <?php include 'connect.php'; $db=mysql_connect($DBHost,$DBUser,$DBPass); mysql_select_db($DBName,$db); echo '<form name="valid" method="post" action="result.php">'; $sql1 = 'SELECT * FROM auto_marques'; $result1=mysql_query($sql1) or die ("Erreur requete"); echo'<form method="post" action="test.php"> <select name="marques" onChange="this.form.submit()"> <option value='.$data['nom'].'></option>'; while ($data = mysql_fetch_array($result1)) { echo '<option onChange="this.form.submit()" value='.$data['nom'].'>'.$data['nom'].'</option>'; } echo '</select></form>'; $marque = $_POST['marques']; echo '<form method="post" action="test.php"> <select name="modele"> <option value="'.$data['nom'].'"></option>'; $sql2 = "SELECT * FROM auto_modeles WHERE idmarques='$marque'"; $result2=mysql_query($sql2) or die ("Erreur requete"); while ($data = mysql_fetch_assoc($result2)) { echo '<option value='.$data['nom'].'>'.$data['nom'].'</option>'; } echo '</select>'; echo '</form><BR><input type="submit" name="submit" value="Envoyer"></form>'; ?>
Partager