Bonjour,
Ca fait plus d'une semaine que je galère à me faire 3 foutues listes chaînées de m*rde, je suis à bout, il faut que je post sur developpez.net avant que je me défenêstre :aie:
Vous l'aurez deviné, ce que j'essaie de faire actuellement, c'est de l'AJAX. Et je suis très mauvais d'ailleurs :mrgreen:
Ma base de données : Gamme, produit, erreur. Je clique sur une gamme, il me filtre les produits dans la deuxième liste puis les erreurs dans la troisième, une liste chaînée quoi :roll:
Une connaissance m'avait filé un bout de code dans lequel il y avait ce type de liste (entre autre, bonjour l'adaptation du code :mouarf:), sauf qu'il y en a que deux, et j'en veux 3, de listes.
Je suis pas sorti de l'auberge :mrgreen:
Voilà où j'en suis :
Html et script:
page de traitement phpCode:
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 <script type="text/javascript" src="javascript/jquery-1.4.1.min.js"></script> <script type="text/javascript"> $(function($) { $('#put').change(function(){ $('#tag option:gt(0)').remove(); if ($('#put').val() >= 0 ) { $.ajax({type: "POST", dataType:"default", url: "listeTag.php", data: "id=" + $('#put').val(), error: function() {alert('Erreur de communication ou d\instructions avec le serveur');}, success: function(data){ $.each(data, function(key, val) { $('#tag').append('<option value="' + val.d_prj_id + '">' + val.d_prj_tag + '</option>'); }) } }); } }); }); </script> <?php try{$bdd = new PDO('mysql:host=localhost;dbname=aide_au_depannage', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));} catch(Exception $e){die('Erreur : ' . $e->getMessage());}?> <fieldset> <legend>Sélection du projet</legend> <form method="post" action="#"> <label>PUT : </label> <select id="put"> <option value="-1">Aucune</option><?php $req=$bdd->query('SELECT nom, id FROM gamme ORDER BY nom'); while($dreq=$req->fetch()) {?> <option value="<?php echo $dreq['id'];?>"><?php echo $dreq['nom']; ?></option><?php }?> </select> <label>TAG : </label> <select id="tag" name="tag"> <option value="-1">Choisir une PUT</option> </select> <input type="submit" name="consulterProjet" value="Consulter le projet" /> </form> </fieldset>
Je vous remercie d'avance, j'espère vraiment enfin faire fonctionner cette liste ...Code:
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 <?php try{$bdd = new PDO('mysql:host=localhost;dbname=aide_au_depannage', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));} catch(Exception $e){die('Erreur : ' . $e->getMessage());} $listeTag = array(); if(isset($_POST['id'])) { // récupération du libellé de la put correspondant à l'identifiant require_once '../model/sqlPut.php'; $debTag = retourneNumPut($db, $_POST['id']); // récupération des tags SN - libellé PUT (ex : SN08****) $requete = $db->prepare ('SELECT id, nom FROM produit WHERE id_gamme="'.$debTag.'" ORDER BY nom'); $requete->execute(array()); $listeTag = $requete->fetchAll(); $requete->closeCursor(); } echo $listeTag; // initialisation de l'accès à la base de données // récupération des variables postées dans la requête ajax // requête vers la base de données // echo du résultat (au format json, html ...) ?>