Bonjour tout le monde.

Je suis en train de créer un forum pour mon site mais je suis devant un souci un peu complexe ...

J'ai reussi a afficher tout mes forum grace a un foreach et chaque categorie du forum grace a une condition ( if(id=cat_id) ).

jusqu'a la pas de probleme mais j'ai essayer d'afficher les nouveau message de chaque categorie ( le plus récent de chaque )

Mais au lieu de ne m'afficher que le plus recent de chaque categorie sa m'affiche tout les message de chaque categorie mais bien du plus récent au plus ancien, j'ai reussi a en afficher que un par categorie grace a un "LIMIT" mais bon s'pas vraiment top ...

Voici mon code si sa peut aider:

<?php foreach($forum as $f) { ?>
<?php print_r($f); ?>
     <div id="clickme" class="page-header">
          <h1 style="cursor:pointer;"><?php echo $f->title; ?></h1>
     </div>
          <div id="book" style="display:none;">
               <table class=bordered-table>
                    <thead>
                         <tr>
                         <th><h2>Titre</h2></th>
                         <th><h2>Sujet</h2></th>
                         <th><h2>Dernier Sujet</h2></th>
                         </tr>
                    </thead>
                    <tbody>
                    <?php
                    foreach($categorie as $c){
                    if($c->id_forums == $f->id){ ?>
                         <tr>

                              <td><h3><a href="<?php echo Router::url("forums/topic/id:{$c->id}/title:$c->cat_title"); ?>"><?php echo $c->cat_title; ?></a></h3></td>
                              <td><h3></h3></td>
                              <td><h3>
                              <?php foreach($topic as $t)
                              if($t->cat_id == $c->categorie_id){
                                   echo $t->topic_title;
                              } ?>
                              </pre>
                              </h3></td>

                         </tr>
                    <?php }
                    } ?>
                    </tbody>
               </table>
          </div>
<?php }?>

c'est a partir de la ligne 23 que sa se guatte ...

4 réponses


serda
Auteur
Réponse acceptée

donc si j'ai bien compris j'enleve le foreach($topic) et je fait une jointure dans le foreach $categorie ?

j'vai test sa =D

EDIT: je n'ai pas eu besoin de faire de jointure j'ai directement fait ma requete dans l'index dans la deuxieme boucle foreach ... c'est parfait !

Je n'ai pas de solution à ton problème il faut bien l'expliquer, mais d'abord je te conseille de revoir ta structure html, par exemple des balises block à l'intérieur d'une balises en ligne !!

serda
Auteur

les balise c'est vraiment pas mon soucis ... la c'est pour afficher des donnée avec php ><

tu peux modifier ta requete de facon a selectionner pour chaque categorie, son post le plus recent grace une jointure; du coup tu peux faire dans la colonne de droite

echo $c->topic_title

.

eric