[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Обработка меню
McLotos
Доброго времени суток.
Возник один вопрос. Интересно было бы узнать варианты действий.
Имеем:
меню, которое хранится в БД
<ul type=none>
<
li>{_link.home_}</li>
<
li>{_link.univers_}</li>
<
li>{_link.admins_}</li>
<
li>{_link.news_}</li>
<
li>{_link.access_}</li>
<
li>{_link.settings_}</li>
<
li>{_link.exit_}</li>
</
ul>

Комплект языковых файлов, которые заменяют названия элементов списка
например
$lang['link.univers'] = "<a href='/univers'>Университеты</a>";

Сейчас сделано так:
В зависимости от текущей локации, из БД вытягивается нужное меню.
Вопрос:
Возможно ли средствами php сделать установку атрибута <li class="selected">
Дополнение:
Жду интересные идеи по реализации, используя только php



Спустя 13 минут, 45 секунд (25.10.2011 - 14:40) McLotos написал(а):
В идеале можно было бы сделать как-то так
<li class="{$class}">
но в таком случае пришлось бы писать функцию, которая бы выполняла сразу несколько задач:
1. Определить где находится юзер
2. Пролистать все меню и найти нужную кнопку
3. Заменить в этой ссылке название класса

Но возникает проблема, по скольку в самих элементах списка нет ссылки, там только переменная, которая меняет своё значение в зависимости от языка

Спустя 1 час, 8 минут, 3 секунды (25.10.2011 - 15:48) SlavaFr написал(а):
str_replace ?

Спустя 58 минут, 32 секунды (25.10.2011 - 16:46) walters написал(а):
самый удобный вариант, отследить на какой странице юзер и вывести ему нужное меню

Спустя 14 часов, 11 минут, 39 секунд (26.10.2011 - 06:58) McLotos написал(а):
Цитата (walters @ 25.10.2011 - 13:46)
самый удобный вариант, отследить на какой странице юзер и вывести ему нужное меню

Понимаете ли в чем дело, walters, первоначально так и было, но только представьте если в проектк 8 уровней доступа, у каждой группы пользователей как минимум 10 локаций. Хранить в БД 80 разных вариантов меню. Это уже слишком, вам так не кажется?

Спустя 6 минут, 55 секунд (26.10.2011 - 07:05) McLotos написал(а):
Вообще-то можно было бы придумать огромное колличество вариантов, ну из тех которые пришли в голову только что:
1. Динамическое присвоение класса элементу списка текущей страницы
<li class='{$class}'>, где $class переменная, которая будет иметь 2 различных значения.
2. Создать один массив со всеми существующими локациями для каждой группы, и просто перебирать этот массив заменяя атрибут класса.
3. В голове висит ещё море вариантов, просто не могу сформулировать =)

Спустя 3 часа, 29 минут, 4 секунды (26.10.2011 - 10:34) SlavaFr написал(а):
@McLotos с удовольствием помог бы но непонимаю в чем собстбенно проблема.
на поставленный вопрос "Возможно ли средствами php сделать установку атрибута <li class="selected">"
я дал собствено ответ.
остальные комментарии не помогли мне понят проблему, а нааборот както запутывают.
если вам простые функции слишком просты, то могу предложить DomDocumen или regexpres


_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.