Создание меню

  • Автор темы Автор темы Sergafon
  • Дата начала Дата начала

Sergafon

Новичок
Создание меню

Здравствуйте!
Подскажите пожалуйста способ реализации такого меню:

Допустим в базе имеется 2 таблицы
одна с основными категориями(1,2,3)
а другая с подкатегориями (1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, 3c)

Задача такая:
сначала выводим главное меню
1
2
3

а при клике на 1 будет так
1
1а
1b
1c
2
3

Загвоздка в том, чтобы при клике на ссылку главного меню, субменю выбиралось именно под этой ссылкой.

заранее спасибо
 
А в чём проблема-то? Вы не можете по подкатегории узнать, к какой она категории относится?
 
Автор оригинала: SiMM
А в чём проблема-то? Вы не можете по подкатегории узнать, к какой она категории относится?
Узнать я могу, причем все уже сделал
только не могу понять как вывеси подкатегории именно под категорией на которую кликаю, а не где-нибудь еще, другими словами раскрыть эту категорию

-~{}~ 02.01.08 17:22:

Автор оригинала: Апокалипсис
Какая то странная архитектура.
Вообще то это делается в 1 таблице с указанием parent_id
Дело совсем не в архитектуре, можно и с 1-ой таблицей сделать
 
Sergafon
толко что перед тобой был клиент с точно такой же проблемой.

тоже непонятно, в чем конкретно проблема.
у тебя меню выводится в цикле?
ну так какая проблема добавить в код вывод подменю?

-~{}~ 02.01.08 17:28:

тот, кстати, догадался это сделать. не владел только операторами сравнения и условного перехода
 
Автор оригинала: Sergafon
только не могу понять как вывеси подкатегории именно под категорией на которую кликаю, а не где-нибудь еще, другими словами раскрыть эту категорию
раскрыть это как? перегрузить страницу с показанным под-меню, показать под-меню без перезагрузки, ....

и вообще, что из себя представляет это меню в html-е? конкретный код html & php который его выводит? (но только тот, что меню выводит)
 
меню и подменю выводятся в цикле.
я же говорю, проблема в том, чтобы вывести имеено под меню на которое кликаю, т.е раскрыть его

-~{}~ 02.01.08 17:31:

dimagolov
перегрузить страницу с показанным подменю
еще разок описываю

итак, само меню

1
2
3

кликаем на 1 и получаем (страница перегружается)

1
1a
1b
1c
2
3

т.е подменю в этом случае должно выводиться между 1 и 2
 
dimagolov
вот только не надо здесь этих запросов кода! не понял вопрос - молча постой в сторонке. не надо посдавлять автора на нарушение правил.

-~{}~ 02.01.08 17:56:

Sergafon
повторяю свой вопрос
какая проблема добавить в код вывода меню код вывода подменю?
 
проблема добавить код так, чтобы подменю выводилось под 1 ( если кликаем на 1 ) либо под 2 (если кликаем на 2) либо под 3 (если кликаем не 3 соответственно)
или что-то я не понимаю уже?
 
Sergafon
да, не понимаете, кликнули на 1, достали все подменю с парентом 1, кликнули на 2, достали с 2 и смотрим, какое меню выбрано, то показываем, остальное скрываем. вроде бы все прозрачно.
 
Sergafon
тебе надо понять, как работают все эти программистские алгоритмы.
тебе знаком оператор условного перехода if?

в обычном коде он либо выполняет, либо не выполняет какое-то действие.

внутри цикла, соответственно, он может выполнить или не выполнить , но это будет происходить много раз.

все, то тебе надо - это добавить внутрь твоего цикла опратор if и выполнять его только если выводимый пункт меню совпадает с выбранным. ты это можешь?
 
melo
так в том-то и дело, что скрывать основное меню не нужно, оно должно всегда быть видимым

или Вы имеете в виду сделать показ с помощью свойства visibility в css?

-~{}~ 02.01.08 18:47:

Автор оригинала: *****
Sergafon
тебе надо понять, как работают все эти программистские алгоритмы.
тебе знаком оператор условного перехода if?

в обычном коде он либо выполняет, либо не выполняет какое-то действие.

внутри цикла, соответственно, он может выполнить или не выполнить , но это будет происходить много раз.

все, то тебе надо - это добавить внутрь твоего цикла опратор if и выполнять его только если выводимый пункт меню совпадает с выбранным. ты это можешь?
конечно знаком
кажется понял, спасибо
ща попробую
 
да, разобрался
просто не мог понять сам алгоритм

всем спасибо
 
лучше загрузить всё меню целиком и по клику сворачивать/разворачивать.
 
Сверху