- RU.PHP ------------------------------------------------------------- RU.PHP -
Msg : #8037 [593]
От : Grigory Holstinnikov 2:5061/83.15 15 апреля 04, 20:18
Кому : All 16 апреля 04, 21:05
Тема : кусок QUERY_STRING
-------------------------------------------------------------------------------
Как поживаете, All ?
Значит вот есть такая задача.
Содержимое главного меню сайта у меня формируется через таблицу MySQL, в
которой указаны ссылки на страницы, ограничения по уровням доступа и проч.
примерный вид выглядит так:
+----+-----+------------------+------------+----------+----------+
| id | pid | name | link | minlevel | maxlevel |
+----+-----+------------------+------------+----------+----------+
| 2 | 0 | Hовости | news.php | 1 | 100 |
| 3 | 0 | Гостевая | guest.php | 1 | 100 |
| 4 | 0 | Объявления | advert.php | 7 | 12 |
| 5 | 0 | Админовка | admin.php | 7 | 8 |
| 1 | 0 | Главная | index.php | 1 | 100 |
>| 8 | 5 | Форумы | ?forums | _7_| _8_|
>| 7 | 5 | Юзеры | ?users | _8_| _8_|
+----+-----+------------------+------------+----------+----------+
Благодаря id и pid строится дерево меню. В общем плане все красиво работает.
Через $_SERVER['SCRIPT_NAME'] определяется текущая страница, по ней берется
ограничения по доступу и все красиво строится. Однако не обошлось без проблем:
при использовании в кач-ве имени link куска QUERY_STRING (как в выделеных
строках) возникает проблема на проверку уровня (т.е. уровень доступа
сохраняется как у родительской ссылки (в данном случае admin.php), и не влияет
на наследников (выделеным указаны требования на разные уровни доступа).
Подскажите плз как выдергивать аккуратно (чтобы без лишних заморочек) этот
кусок QUERY_STRING, учитывая что в этих страницах будут дополнительные
параметры (всякие там id=1&class=2 etc).
(возможна модификация, вместо ?forums писать admin.php?forums если можно
подскажите и для этого варианта)
Best regards, Grigory Holstinnikov [aka Scar].
--- УТВЕРЖДАЮ. Одобрено минфидом России :) (с) GoldED
* Origin: Да ты ведьма?! (2:5061/83.15)
При переходе по баннеру - скидка 25% на первый месяц обслуживания! При переходе по баннеру - скидка 25% на первый месяц обслуживания!