Ваша реклама могла б бути тут!
1 млн переглядів на місяць!
Google Page Rank: 5

Помогите с построением дерева на php

🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
Статус: Offline
Реєстрація: 12.04.2011
Повідом.: 76
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #1
Говорю сразу я новичок в программировании.
Ситуация такая пишу небольшой сайт, вернее что то типа каталога товаров.
Так вот есть база данных, в ней таблица с группами товаров. Мне нужно вывести дерево каталогов. Честно говоря не понимаю логику как это делать? Может кто то мне разъяснить как это можно организовать.
Таблица с группами: group_wares
В ней есть поля:
code_group_wares - код группы
code_parent_group_wares - код родительской группы
name - название группы

Я понимаю что это нужно делать с помощью рекурсии, но я с рекурсиями никогда еще не сталкивался и не имею особого опыта их писать
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #2
Чтобы понять рекурсию нужно понять рекурсию.

Нужна подсказка? Или готовое решение?
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #3
В книге "Разработка web-приложений с помощью PHP и MySQL" Веллинга и Томсон (4-е издание), на странице 744 рассматривается решение аналогичной задачи, только вместо товаров выводится дерево сообщений форума.
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #4
Вообще то мне нужна подсказка. Думаю решение и сам найду
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #5
Код:
function renderMenu(array $allItems, $parentId=0)
{
    foreach ($allItems as $itemId=>$item) {
        if (parentId != $item['parentId']) {
            continue;
        }
        renderItem($item);
        renderMenu($allItems, $itemId);
    }
}

вот и все. воды дать?
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #6
Человек же подсказку просил, а не решение. Нехорошо это, нехорошо.

Хотя угадывается ход событий:

[sherlock holmes mode]
14:32 поциент читает пост
16:42 решение найдено, и даже немного воды осталось. (2 часа потел ок) но тут внезапно ТС говорит что нужна подсказка. Поциент думает :"что же это Я зря пахал 2 часа?" И выкладывает решение.
[/sherlock holmes mode]
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #7
Человек же подсказку просил, а не решение. Нехорошо это, нехорошо.

Хотя угадывается ход событий:

[sherlock holmes mode]
14:32 поциент читает пост
16:42 решение найдено, и даже немного воды осталось. (2 часа потел ок) но тут внезапно ТС говорит что нужна подсказка. Поциент думает :"что же это Я зря пахал 2 часа?" И выкладывает решение.
[/sherlock holmes mode]
Решение намного интересней с его стороны, и к тому же это послужит хорошим примером для него как от участника с большим опытом.
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #8
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #9
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #10
Спасибо за помощь. Буду пытаться реализовать
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #11
Человек же подсказку просил, а не решение.

назвать это "решением" может только истинный препод.
бля, ну хоть иногда листайте код реальных приложений вместо методичек..
 
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #12
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #13
  • 🟡 12:04 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #14
Говорю сразу я новичок в программировании.
Ситуация такая пишу небольшой сайт, вернее что то типа каталога товаров.
Так вот есть база данных, в ней таблица с группами товаров. Мне нужно вывести дерево каталогов. Честно говоря не понимаю логику как это делать? Может кто то мне разъяснить как это можно организовать.
Таблица с группами: group_wares
В ней есть поля:
code_group_wares - код группы
code_parent_group_wares - код родительской группы
name - название группы

Я понимаю что это нужно делать с помощью рекурсии, но я с рекурсиями никогда еще не сталкивался и не имею особого опыта их писать

Это все фигня. Почитай доку про NestedSets(Вложенные множества).
Не надо будет никакой рекурсии
 
Назад
Зверху Знизу