Affichage données table selon sélection liste

Résolu/Fermé
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010 - 24 févr. 2010 à 12:27
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010 - 3 mars 2010 à 08:13
Bonjour,

Alors on va essayer de faire clair :

J'ai une liste déroulante avec 4 option
- tous
- du jour
- de la semaine
- du mois

Lorsque je choisis une de ces options, je vais récupérer les infos dans une table et je souhaiterai qu'elles s'affiche dans un tableau dans la page active.

Merci
A voir également:

11 réponses

angelus1821 Messages postés 192 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 21 décembre 2014 16
24 févr. 2010 à 14:06
Bonjour,

ce que tu peux faire c'est une requête, qui affiche ce que tu désires dans un tableau, mais tu pose comme condition ce que tu as selectionné dans ta liste deroulante

tu declares ta connexion et séléction de ta base en debut de page par exemple
tu as ta liste deroulante, tu peux faire un bouton qui actualise ton formulaire ,
quand tu cliques sur le bouton ( de type submit) :
tu récupères la valeur selectionné de ta liste deroulante:
$valeur = $_POST['NomDeTaListeDeroulante']
- tu créer la requete ex: $selection = " select nom from personne where agePersonne='$Valeur ' "
//tu selectionne le nom des personnes dont l'age correspond à la valeur de ta liste selectionné
tu executes la requete et tu affiche le résultat obtenue ....
j'espere que sa pourra t'aider sinon n'hésite pas :)

voici un petit lien, tout y est bien expliqué :) =>https://phpsources.net/

en supposant que tu programmes en php, car tu n'a pas précisé dans quel langage de programmation tu étais :)
bon courage ^
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
24 févr. 2010 à 14:42
Bonjour,
Merci d'avoir répondu
Désolé oui en effet j'ai pas fais attention je programme bien en PHP sur wamp avec MySql comme base de données .

Merci pour le lien mais impossible d'y avoir accès .

Et ce que je veux faire c'est exactement ce que tu viens de décrire sans le bouton pour recharger je préfererai mais maintenant faut que je sache COMMENT PROGRAMMER ??!! LOL

La est le problème !! lol
0
angelus1821 Messages postés 192 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 21 décembre 2014 16
24 févr. 2010 à 15:06
re
ah en effet, là ça devient plus difficile, sans bouton pour recharger la page, j'en ai aucune idée tu va devoir forcément trouver un moyen de recharger la page ( mis à part la touche f5 je ne vois pas d'autre solution lol)

sinon je vais te donner un exemple plus concrait :
$maConnexion = mysql_connect("localhost","root","mysql"); // ma connexion
$maBase= mysql_select_db("NomDeLaBase") ;
//selection de ta base, tu dois l'avoir créer au préalable sous phpmyadmin, bien sur :)

tu as ta liste deroulante
<?php
echo '<form method="post" >';
   echo    '<select name="NomListe">
   echo '<option>10</option>';
   echo '<option>11</option>';
   echo '<option>12</option>';
   echo '<option>13</option>';
    echo    '</select>';
//tu as ton bouton
echo '<input type="submit" name="btnEnvoyer" value="Cliquer ici pour Actualiser ma page  ">';
// tu recupere la valeur selectionner de ta liste deroulante dans une variables
$recupAge= $_POST['Nomliste'];

echo '</form>';

   if (isset($_POST['btnEnvoyer']))  // si tu appuie sur le bouton
   {
       $Tarequete="select nom from personne WHERE agePersonne='$recupAge'  ";
       $executionRequete= mysql_query ( $Tarequete,$maConnexion );
echo '<table border="2">'; //tu créer un tableau avec une bordure visible

      while ($tab= mysql_fetch_array($executionRequete ))
       {
           echo '<tr>';
           echo '<td>'.$tab[0].'</td>';
            echo '</tr>';
      }
//tant que ta requete retourne un resultat ,il va te créer une ligne et une colonne avec le nom de la personne, ici $tab[0] correspond au nom, ( 1er critere de ta selection )

echo '</table>';

  }
?>


j'espere avoir été un peu clair, apres tu adaptes selon tes besoins :)
sinon regarde sur ce site aussi, il est plutot pas mal : https://openclassrooms.com/fr/
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
24 févr. 2010 à 15:49
Merci c'est très sympa
par contre est ce normal que le tableau s'affiche directement au lancement de la page sans sélection dans la liste ?
Ne manquerait-il pas un test sur le fait qu'une option de la liste à été sélectionnée ?

De plus j'ai une requête différente à chaque sélection de la liste

données du jour -> SELECT * FROM table WHERE date = datedujour

données du jour KO -> SELECT * FROM table WHERE date = datedujour AND Etat = KO

données de la semaine -> SELECT * FROM table WHERE datesemaine<date<datedujour AND Etat = KO

données du mois -> SELECT * FROM table WHERE datemois<date<datedujour AND Etat = KO

En fait ce que je voudrais c'est que lorsque j'arrive sur ma page par défaut toute ma table est affichée
Si je fait une sélection dans la liste je fais la requête correspondante et je modifie le tableau ou un nouveau et j'efface l'autre.

Est-ce que c'est clair
et
Est ce que c'est possible ?
0
angelus1821 Messages postés 192 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 21 décembre 2014 16
24 févr. 2010 à 16:03
oui cela me semble assez clair , par contre cela devra attendre demain pour ma part car le temps me manque pour tout t'expliquer en details

n'hésite pas à me MP au besoin
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
24 févr. 2010 à 16:11
OK merci
j'vais voir de mon côté et si jamais tu trouve le temps demain j'suis partante lol

Merci

Bonne fin de journée
0
angelus1821 Messages postés 192 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 21 décembre 2014 16
25 févr. 2010 à 09:45
re, merci :)
il y a une chose que j'ai du mal a saisir,
dans une de tes requetes tu as :
données du jour KO -> SELECT * FROM table WHERE date = datedujour AND Etat = KO

à quoi correspond KO ?? ( plus precisément le champ Etat si tu preferes ) ?

- ensuite en rapport au " test sur le fait qu'une option de la liste à été sélectionnée ? " :
pour plus de precision tu peux mettre :

     if ( isset ($_POST[''Nomliste'']))
    {
          $recupAge= $_POST['Nomliste'];
     }

comme cela, tu ne risques pas d'avoir d'erreur quelconque, au niveau de l'affectation de ta valeur de la liste deroulante dans $recupAge.

- pour ce qui est d'avoir ton tableau par defaut quand tu arrive sur ta page :
tout simplement :
tu :
- declares ta connexion,
- selectionnes ta base
- declares la requetes
- et créer le tableau correspondant à ce que tu veux obtenir ( l'etat par défaut)
est ce que c'est clair ?

Pour ce qui est de la suite , si j'ai bien compris :
en fonction de ce que tu selectionnes, tu as une requetes qui correspond à ta selection donc tu peux envisager la chose de la maniere suivante :
( on suppose que dans ta liste deroulante tu as 3 options : option1, option2 et option 3 "

if(isset($_post['btnEnvoyer']))
{
<code>if ( isset($_POST['NomListe']))
{
$recupValeur = $_POST['NomListe'];
switch $recupValeur // selon l'option selectionné
{
case = 'option1' :
// requete correspondante ...etc
break;
case = 'option2' :
//autre requete
break;
case = 'option3' :
........
break;
}//fin switch

} //fin du if /code>
}//fin if


ensuite bien entendu quand tu fais ta requete tu fais tout le necessaire pour le mettre dans un tableau

voila comment je vois la choses pour le moment, essaye cela, et dis moi ce que sa donne :)
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
25 févr. 2010 à 10:46
MARCI BOCOU MEUSSIEUR !!

non sans deconner un grand merci ça fonctionne !

Par contre j'aimerai bien trouver comment faire pour que les données change en fonction de la sélection mais sans le bouton submit je crois que c'est possible j'vais voir ça .

Et aussi une dernière ptite chose, je te demande mais je vais regarder aussi de mon côté et que si tu as le temps , est ce que c'est possible de garder la sélection dans la liste box.
C'est à dire que en fait quand je change ça affiche bine les données mais ça revient sur le 1er choix dans la liste et je voudrait rester sur la sélection faite pour savoir ou on en est.

C'est clair ou pas du tout ? lol

encore merci pour tout
peut être A+
sinon bonne journée
0
angelus1821 Messages postés 192 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 21 décembre 2014 16
25 févr. 2010 à 10:52
oui oui c'est clair

alors là je penses que dans ton <select name="listeNom" > essaye de rajouté " selected=selected ",
je sais que cela marche pour les case à cocher, car jje m'y connait un peu , mais pour les listes deroulantes, je ne sais pas vraiment, sinon pour que cela reste sur l'option que tu as selectionné je ne vois pas d'autres solutions :s

pour eviter d'utiliser le bouton submit, essaye comme cela :
if ( isset ($_POST['listeNom'])) // si tu as selectionné qqchose dans ta liste

- tu fais toutes les operations ....
et rajouter le code suivant avant de faire la fin du if :

    header("Location:Tapage.php");
         // cela devrait rafraichir ta page, et prendre en compte le traitement effectué précédemment



sinon pas de soucis, bon courage par la suite :)
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
25 févr. 2010 à 13:42
Merci
mais aucune de tes 2 propostions ne fonctionnent lol

pour recharger la page en fonction de la sélection j'ai ajouté :
<select name="NomListe" id="NomListe" selected="selected" onchange="this.form.submit()">

par contre pour conserver l'item sélectionner pas trouvé !
0
angelus1821 Messages postés 192 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 21 décembre 2014 16
25 févr. 2010 à 15:11
alors là je sèche lol :s
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
26 févr. 2010 à 12:42
Bonjour,

Un p'tit UP si quelqu'un passe par la

après 2 jours et 10 000 tests je me permets de revenir vers vous car la j'en ai plein le bbbbbiiiiiiiipppppp !!

J'ai donc un formulaire avec une liste déroulante avec plusieurs options.
Lorsque je sélectionne une option je souhaiterai que ma page se relaod ça c'est trouvé :
select onChange="this.form.submit();"

mais je voudrais aussi que lorsque l'on change de value que l'on reste sur la sélection et non pas revenir sur la 1ere . trouvé aussi :

select onchange="this.options[this.selectedIndex].defaultSelected";

Maintenant serait il possible d'avoir un coup de main pour la mise en place de 2 onChange sur un seul SELECT !!
J'ai essayé avec une fonction javascript mais pas de résultat !

Cordialement,
0
liadea Messages postés 127 Date d'inscription vendredi 19 février 2010 Statut Membre Dernière intervention 30 juin 2010
3 mars 2010 à 08:13
UP !
SVP
0