Smarty Forum Index Smarty
WARNING: All discussion is moving to https://reddit.com/r/smarty, please go there! This forum will be closing soon.

affichage mysql multilevel - creation d'un menu

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Smarty Forum Index -> Language: French
View previous topic :: View next topic  
Author Message
jocker
Smarty n00b


Joined: 19 May 2008
Posts: 1

PostPosted: Mon May 19, 2008 11:00 am    Post subject: affichage mysql multilevel - creation d'un menu Reply with quote

Bonjour à tous,

j'ai eu pas mal de problème pour trouver une solution afin d'afficher un menu.

L'idée était de récupérér chaque rubrique puis une 2e requete SQL qui récupère tous les textes contenus dans cette rubrique. Voici donc une solution quif onctionne même si je ne sais pas si c'est la meilleure.

Code:

//on liste les rubriques
$req = $db->query('SELECT id_rubrique, nom FROM '.$db->prefix.'rubriques ORDER BY position') or error('Impossible de récupérer la liste des rubriques', __FILE__, __LINE__, $db->error());
if ($db->num_rows($req) > 0){
  $rubriques = array();  $list_text = array();
  $i = 0;
  while ($rub = $db->fetch_assoc($req)){
    $rubriques[++$i] = $rub;

    //on liste les textes
    $req2 = $db->query('SELECT id_texte, titre, texte FROM '.$db->prefix.'textes WHERE id_rubrique = '.$rub['id_rubrique'].' AND online != 0 ORDER BY id_texte') or error('Erreur', __FILE__, __LINE__, $db->error());

   while ($texte = $db->fetch_assoc($req2)){
          //$j++;
          $list_text[$i][++$j] = $texte;
          $list_text[$i][$j]['url'] = BuildURL($texte['titre'], $texte['id_texte']); //fonction d'URL rewriting
        }
  }
    $sm_mnutext->assign('rubriques', $rubriques);
    $sm_mnutext->assign('list_text', $list_text);
}

    $sm_mnutext->display('mnutextes.tpl');



et voici mon template

Code:

      {foreach from=$rubriques key=key item="rub"}
        <dt>{$rub.nom}</dt>
 
        {foreach from=$list_text[$key] item="texte"}
            <dd><a href="{$texte.url}">{$texte.titre}</a></dd>
          {/foreach}
      {/foreach}


En espérant que ca poura en aider certains et puis si quelqu'un veut l'améliorer ou a une autre solution, c'est avec plaisir que j'attends son code.

@+
Back to top
View user's profile Send private message
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Smarty Forum Index -> Language: French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group
Protected by Anti-Spam ACP