Se connecter / S'enregistrer
Votre question

RESOLU affichage résultat menu accordéon

Tags :
  • Echo
  • Programmation
Dernière réponse : dans Programmation
4 Décembre 2011 14:45:35

bonjour
je fais appel à vous , j'ai un problème pour réaliser l'affichage des liens d'un menu déroulant accordéon.
j'ai réalisé un script php d'un menu qui est le suivant:
  1. <?php
  2. mysql_select_db($database_dream, $dream);
  3. $query = 'SELECT item_menu, id_menu FROM menu WHERE id_menu_dir is NULL';
  4. $data = mysql_query($query) or die(mysql_error());
  5. echo '<div id="menu">';
  6. $i = 1;
  7. while($row = mysql_fetch_assoc($data)) {
  8. echo '<div class="menu" id="menu' . $i . '" onclick="afficheMenu(this);"><a href="#">' . $row['item_menu'] . '</a></div>';
  9. $subQuery = 'SELECT item_menu FROM menu WHERE id_menu_dir =' . $row['id_menu'];
  10. $subData = mysql_query($subQuery) or die(mysql_error());
  11. echo '<div id="sousmenu' . $i . '" style="display:none;">';
  12.  
  13. while ($subRow = mysql_fetch_assoc($subData)) {
  14. echo '<div class="sousmenu"><a href="#">' . $subRow['item_menu'] . '</a></div>';
  15. }
  16. echo '</div>';
  17. $i++;
  18. }
  19. echo '</div>';
  20. ?>

voici le résultat:
http://galaxyweb.free.fr/catalogue
je veux faire un lien vers une table articles pour afficher les résultats, voici les tables:
menu

articles

requête avec jointure des 2 tables:
  1. $colname_Recordset1 = "-1";
  2. if (isset($_GET['id_menu'])) {
  3. $colname_Recordset1 = $_GET['id_menu'];
  4. }
  5. mysql_select_db($database_dream, $dream);
  6. $query_Recordset1 = sprintf("SELECT articles.titre, articles.`description`, articles.prix, articles.photo, menu.id_menu FROM articles, menu WHERE articles.ref_menu=menu.id_menu and id_menu=%s", GetSQLValueString($colname_Recordset1, "int"));
  7. $Recordset1 = mysql_query($query_Recordset1, $dream) or die(mysql_error());
  8. $row_Recordset1 = mysql_fetch_assoc($Recordset1);
  9. $totalRows_Recordset1 = mysql_num_rows($Recordset1);

je pense que c'est à ce niveau, de mon menu accordéon qu'il faut intégrer les modifications , code:
  1. echo '<div class="sousmenu"><a href="#">' . $subRow['item_menu'] . '</a></div>';


je bloque à ce niveau, il faut que le lien de chaque sous menu affiche les données de la requête. Merci de m'aider.

Autres pages sur : affichage resultat menu accordeon

7 Décembre 2011 14:02:23

script terminé
  1. <?php
  2. mysql_select_db($database_dream, $dream);
  3. $query = 'SELECT item_menu, id_menu FROM menu WHERE id_menu_dir is NULL';
  4. $data = mysql_query($query) or die(mysql_error());
  5. echo '<div id="menu">';
  6. $i = 1;
  7. while($row = mysql_fetch_assoc($data)) {
  8. echo '<div class="menu" id="menu' . $i . '" onclick="afficheMenu(this);"><a href="#">' . $row['item_menu'] . '</a></div>';
  9. $subQuery = 'SELECT id_menu, item_menu FROM menu WHERE id_menu_dir =' . $row['id_menu'];
  10. $subData = mysql_query($subQuery) or die(mysql_error());
  11. echo '<div id="sousmenu' . $i . '" style="display:none;">';
  12. while ($subRow = mysql_fetch_assoc($subData)) {
  13. echo '<div class="sousmenu"><a href="catalogue.php?id_menu='.$subRow['id_menu'].'">' . $subRow['item_menu'] . '</a></div>';
  14. if (isset($_GET['id_menu']) && $subRow['id_menu'] == $_GET['id_menu']){
  15. echo '<script type="text/javascript">afficheMenu(document.getElementById(\'menu' . $i . '\'));</script>';
  16. }
  17. }
  18. echo '</div>';
  19. $i++;
  20. }
  21. echo '</div>';
  22. ?>
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS