@l55uiz

Как вывести меню и подменю?

Привет всем.
Задача: вывести меню с подменю, которое соответствует ему(меню).
Таблица menu
1ac5b8578f6247bd966bb85017ffe06a.png
Таблица submenu
c26e919ee486486aa3c1dca7d10d609c.png
Часть Кода с запросами!!
function get_menu() {
  global $pdo;
  $stmt = $pdo->query('SELECT * FROM menu ');
  $menu = $stmt->fetchAll();
  return $menu;
}
function get_submenu() {
    global $pdo;
    $stmt = $pdo->query('SELECT sub_menu FROM sub_menu ');
    $submenu = $stmt->fetchAll();
    return $submenu;
}

HTML
<?php foreach ($menu as $menu) : ?>
        <li><span><?php echo $menu['name']; ?></span>
            <ul class="sub-menu">
                <?php foreach ($submenu as $submenus) : ?>
                      <li><a href=""><?php echo $submenus['name']; ?></a></li>
                 <?endforeach; ?>
              </ul>
       </li>
   <?endforeach; ?>

Вопрос! Как вывести данные, чтобы в "Основное меню" в подменю были "Холодные, Горячие, Гарниры", а в "Детское меню" - "Мороженное, Десерты?
  • Вопрос задан
  • 768 просмотров
Пригласить эксперта
Ответы на вопрос 1
profesor08
@profesor08 Куратор тега PHP
Ваш код:
<?php
     $menu = get_menu();
     $submenu = get_submenu();
?>
<?php foreach ($menu as $item) : ?>
        <li><span><?php echo $item['name']; ?></span>
            <ul class="sub-menu">
                <?php foreach ($submenu as $submenu_item) : ?>
                      <?php if($submenu_item['id_menu'] == $item['id']): ?>
                           <li><a href=""><?php echo $submenu_item['name']; ?></a></li>
                      <?php endif; ?>
                <?endforeach; ?>
            </ul>
       </li>
<?endforeach; ?>


В таблице submenu у вас есть колонка id_menu, этот номер соответствует id из таблице menu. Проверяя их соответствие выводятся только нужные пункты субменю.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы