Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2161 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  menu avec boucle

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

menu avec boucle

n°1295339
jenny50
Posté le 31-01-2006 à 10:54:04  profilanswer
 

Bonjour,  
 
Voici mon problème.
 
J'ai une table 'categorie' avec cat_cle (id) et cat_lib (libellé) de la catégorie.
J'ai une table 'documents' avec doc_cle (id), doc_lib (libellé), doc_date, doc_cat (catégorie du doc)
 
Je souhaite faire un menu avec de cette manière :  
 1. categorieA
  1a. document1 de la catégorie A
  1b. document2 de la catégorie A
  1c. document3 de la catégorie A
 2. catégorieB
  2a. document1 de la catégorie B
  2b. document2 de la catégorie B...
 
Avez-vous une solution?

mood
Publicité
Posté le 31-01-2006 à 10:54:04  profilanswer
 

n°1295341
benamoubea​ch
tivuplai
Posté le 31-01-2006 à 10:57:55  profilanswer
 

tu choisis dabord toutes tes catégories de ta table categorie que tu ordonnes sur le libellé, et ensuite dans la boucle tu dois refaire une requete ou tu choisis les documents de cette catégorie.
 
Tu peux aussi le faire en 1 seul boucle avec des jointures en y réfléchissant un minimum

n°1295342
anapajari
s/travail/glanding on hfr/gs;
Posté le 31-01-2006 à 10:59:58  profilanswer
 

Je ne vois pas trop où est le problème ...
 
Tu fais une requete(avec une jointure entre tes deux tables) qui te remonte tous les enregistrements.
Ensuite tu parcours tous les resultats et tu affiches au fur et à mesure.
 
 
edit: [:grilled] mais perso je ne recommande pas de faire la solution avec les requetes dans la boucle


Message édité par anapajari le 31-01-2006 à 11:01:35
n°1295345
benamoubea​ch
tivuplai
Posté le 31-01-2006 à 11:01:40  profilanswer
 

juste pour afficher les différentes catégories , que tu ne dois afficher qu'une fois.
 
c pour ca que j'ai mis "un minimum" :)

n°1295347
jenny50
Posté le 31-01-2006 à 11:05:12  profilanswer
 

ça donnerai quoi dans le code car j'ai essayé pas mal de chose avant de posté ce message ...

n°1295354
darkendorf
Posté le 31-01-2006 à 11:10:14  profilanswer
 

Code :
  1. for($i=0; $i<count($categorie); $i++) {
  2.    echo $i,'. Categorie',$categorie[$i]['cat_lib'],'<br />';
  3.    for($j=0; $j<count($document); $j++) {
  4.       if($document[$j]['doc_cat'] == $categorie[$i]){
  5.          echo '&nbsp;&nbsp;',$i,$document[$j]['libelle'],'. document',$j,' de la cat&eacute;gorie ',$categorie[$i]['cat_lib'],'<br />;
  6.       }
  7.    }
  8. }


 
heu... en même temps tu ne précise pas grand chose, (si tu t'y connais, ou pas, comment sont contenues ces informations...) donc si cela te convient...


Message édité par darkendorf le 31-01-2006 à 11:11:38
n°1295363
jenny50
Posté le 31-01-2006 à 11:19:03  profilanswer
 

a quoi correspondent $categorie, $document?
où est-ce que je fais ma requete? et quelle requete?

n°1295368
darkendorf
Posté le 31-01-2006 à 11:21:33  profilanswer
 

donc on est en mode 'je veux'
 
un point : tu sais ce que tu veux
 
les problèmes :
- en php ?
- depuis une base de données ?
- tu sais construire une requête sql ?
- tu sais accéder au résultat de ta requête ?

n°1295372
anapajari
s/travail/glanding on hfr/gs;
Posté le 31-01-2006 à 11:23:45  profilanswer
 

Selon Les regles du forum

Citation :

[0C] On ne fait pas le boulot à votre place.
 
    * Les demandes du style "vous pouvez faire un programme faisant [...] pour moi ?" sont assez mal vues et n'obtiennent que très rarement de réponses.


 
Alors montre nous ou tu en es dans ton code et on se fera un plaisir de t'aider. Mais personne ne va te faire ton truc en entier!


Message édité par anapajari le 31-01-2006 à 11:25:02
n°1295382
jenny50
Posté le 31-01-2006 à 11:33:29  profilanswer
 

Voilà où j'en suis : pb en visualisation chaque doc est répété dans chaque catégories. il ne tri pas les doc par catégorie
 
$sql = " SELECT cat_cle, cat_lib FROM categorie WHERE cat_cle < 8 ORDER BY cat_lib DESC ";
         $qry = pg_query ($conn, $sql);
         while ($result = pg_fetch_assoc($qry))
          {
          echo $result['cat_lib'] . "<br>";
          $sql2 = " SELECT doc_cle, doc_lib, doc_file, doc_type, doc_cat, cat_cle FROM documents INNER JOIN categorie ON cat_cle=doc_cat ORDER BY doc_lib DESC ";
          $qry2 = pg_query ($conn, $sql2);
          $clefile = $result2['doc_file'];
          if ($result2['doc_cat'] == $result2['cat_cle'])
           {
           while ($result2 = pg_fetch_assoc($qry2))
            {
            echo $result2['doc_lib'] . "<br>";
            }
           }
          }

mood
Publicité
Posté le 31-01-2006 à 11:33:29  profilanswer
 

n°1295401
darkendorf
Posté le 31-01-2006 à 11:48:57  profilanswer
 

illisible...
 
où est-ce que ça bloque là dedans ?

n°1295409
anapajari
s/travail/glanding on hfr/gs;
Posté le 31-01-2006 à 11:57:14  profilanswer
 

Tu as tout mélangé :D
Si tu fais des requetes dans ta boucle tu n'as pas besoin de faire une jointure sur la 2eme. Change là en:

Code :
  1. $sql2 = "SELECT doc_cle, doc_lib, doc_file, doc_type, doc_cat, FROM documents  where doc_cat =".$result['cat_cle']." ORDER BY doc_lib DESC";


 
Par contre je le redis, c'est pas terrible comme solution parce que si tu as 100 catégories tu vas faire 101 requêtes , alors qu'une seule suffisait!

n°1295426
jenny50
Posté le 31-01-2006 à 12:13:39  profilanswer
 

ouai mai en une ma requete donne quoi?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  menu avec boucle

 

Sujets relatifs
MenuComment faire une grosse police dans un menu déroulant ?
[VBA] convertir texte en num dans une bouclePlacer un menu dans un autre fichier
boucle - arret utilisateurPb avec EOF dans boucle
Menu deroulant et redirectionFaire un menu associer au click gauche !!
[Html] Menu, composant html et z-indexmenu deroulant
Plus de sujets relatifs à : menu avec boucle


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR