Bonjour je viens vous demandez de l'aide encore une fois.
La ce que je veux faire c'est de récupérer l'id du client pour après faire un requete sql qui séléctionne les ordinateurs existant que pour le client que j'ai sélectionné.
Mais la je n'arrive pas a récupérez l'id du client je pense qu'il faut que je fasse une requête en ajax mais je ne sais pas comment faire je vous montre ci dessous les bout de code qui sont utiles a ce que je veux faire.
ici c'est la ou on faire la recherche de client
qui est combiner avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3<tr class="fond1"><td>Client :</td><td><input type="text" name="client" autocomplete="off" id="clientXML" size="45" value="<?php echo $nom," ", $prenom; ?>" /></td> //pour afficher le résultat de la requete ajax ci dessous <tr><td><div id="client"></div></td></tr>
et l'ajax :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <script type="text/javascript"> var options = { varname:"search", noresults:"Aucun résultat", script:"ajax_client.php?", timeout: 5000000, callback: function (obj) { document.getElementById('clientId').value = obj.id; } }; var as_xml = new AutoSuggest('clientXML', options); </script>
et je récupère l'id comme sa :
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 <?php header("Content-Type: text/xml"); echo("<?xml version=\"1.0\" encoding=\"utf-8\" ?>"); echo("<results>"); $search = $_GET["search"]; //requete pour la recherche de client $r = $bdd2->query("select * from esf_clients where societe like '%".$search."%' or nom like '%".$search."%' or prenom like '%".$search."%';"); while($ligne = $r->fetch()) { $idclient = $ligne["idclient"]; $societe = $ligne["societe"]; $nom = $ligne["nom"]; $prenom = $ligne["prenom"]; $email = $ligne["email"]; $valeur = utf8_encode("$societe ($prenom $nom)"); $info = utf8_encode($email); //affiche le nom, prenom et email du client echo "<rs id=\"".$idclient."\" info=\"".$info."\">".$valeur."</rs>"; } echo("</results>"); ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $(document).ready(function(){ $("#client").click(function(){ // element var elt = this; // id de l'element var idElt = this.getAttribute('id'); }); });
maintenant la ou je fait ma requête + ma liste déroulante :
Quand je sélectionne mon client ma liste déroulante ne se remplis pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?php // requête pour sélectionner les ordinateur que pour le client sélectionner $reponse = $bdd->query('SELECT * FROM materiel WHERE idclient="'.$idclient.'"'); //tant qu'il y a des ordinateur les afficher while ($donnees = $reponse->fetch()) { ?> <option value="<?php echo $donnees['id'];?>"><?php echo $donnees['nom']," ", $donnees['processeur'];?></option> <?php } ?> </></select></td></tr>
voici ma table de materiel :
voici ma table de ticket :
Partager