Page 1 sur 1

de liste déroulante affiché valeur tableau?

Posté : 02 mars 2017, 16:03
par vink
Bonjour, j'aimerai faire un tableaux a partir d'une liste, par ex : si je choisis toto, je voudrais qu'il sélectionne qui es lié au nom en sachant que les information lié se trouve sur une autre table, es ce que c'est possible et comment dois je mis prendre?
merci

Code : Tout sélectionner

<?php array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'" ); $host = "localhost"; $user = "root"; $pass = "Mm101010"; $dbn = "smartphone"; try{ $bdd = new PDO("mysql:host=".$host.";dbname=".$dbn, $user, $pass, array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8" ) ); $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } ?> <!DOCTYPE html> <html> <head> <title></title> <script> function selectChoice() { var container = $('#Nom_selectionnee'); var selector = $('#choix'); var url = '../php_presque_fini/Tableau_essaie.php'; selector.change(function() { var value = $(this).val(); arraySelect = new Array; $("select option:selected" ).each(function() { arraySelect.push(this.value); }); $.ajax({ url : url, type : 'post', data : {'choix' : arraySelect}, success : function(data){container.html(data);} }); }); } </script> </head> <body> <div id="content"> <label>Nom :</label> <select id="selection_Nom" name="choix" onChange="request(this);"> <option value="">-----------</option> <?php $req = $bdd->query("select * from select_nom_prenom_user group by Nom" ); while($ligne = $req->fetch()) { echo("<option value='choix'>".$ligne['Nom']."</option>" ); } ?> </select> <div id="Nom_selectionnee"> <table> <tr> <th>Operateur</th> <th>SIM</th> <th>PUK</th> <th>Num ligne</th> <th>Volume</th> <th>Statut abo</th> </tr> <?php $choix = ($_POST['choix']); $selquer = "Select * from select_nom_prenom_user where Nom = '"; $selquer .= $choix; $selquer .= "' order by Nom asc"; $req = $bdd->query($selquer); while($ligne = $req->fetch()) { echo(" <tr> <td>".$ligne['Operateur']."</td> <td>".$ligne['Num_SIM']."</td> <td>".$ligne['PUK']."</td> <td>".$ligne['Num_ligne']."</td> <td>".$ligne['Volume']."</td> <td>".$ligne['Statut_abo']."</td> </tr>" ); } ?> </table> </body> </html>
image de ma page
http://www.hostingpics.net/viewer.php?id=518099ex10.png
Merci

Re: de liste déroulante affiché valeur tableau?

Posté : 02 mars 2017, 16:47
par moogli
salut,

ton erreur est du au fait que lorsque le fommulaire n'est pas validé $_POST est vide et donc $_POST['choix'] ne contient rien.

c'est pour cela (entre autre) qu'il faut toujours tester l’existence d'un index dasn $_GET / $_POST (etc.) avant de l'utiliser et d'ainsi condition les requêtes ou l'affichage.

pour ta requete sql vu tu utilises PDO tu pourrais utiliser une requête préparée ou au moins utiliser PDO::quote pour éviter que ton code soir sensible aux injections SQL.

@+

Re: de liste déroulante affiché valeur tableau?

Posté : 02 mars 2017, 17:22
par vink
peut tu me le corrigé s'il te plait sa fait 2semaine qu je suis coincé
merci

Re: de liste déroulante affiché valeur tableau?

Posté : 03 mars 2017, 11:20
par moogli
non,

je peux te guider mais je ne ferais pas pour toi, le but de l'aide de ce forum c'est de t'aider à apprendre.

tu as besoin de la fonction empty pour conditionner la requête SQL et son traitement.

@+