Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Динамическое Меню навигации.
 
 автор: tAleks   (09.12.2006 в 13:39)   письмо автору
 
 

Как сделать динамическую менюшку?

Хочу сделать менюшку, чтобы можно было через административную панель, скрывать разделы.

Это, как я понимаю надо делать с Базой. И разумно ли загонять менюшку в БД?

   
 
 автор: aexb   (09.12.2006 в 14:28)   письмо автору
 
   для: tAleks   (09.12.2006 в 13:39)
 

Действительно для меню можно делать в базе отдельную таблицу с полями, например:
id, menu_text, menu_link, status

ID - уникальный счетчик записей в БД, menu_text - собственно текст пункта, menu_link - то, куда мы при нажатии попадем, status - как раз и отвечает за показ/скрытие пункта.

То есть, у нас, например, есть в таблице такие записи (схематично):
1 | Новости | news.php | closed
2 | Услуги | services.php | open
3 | Контакты | contacts.php | open

При запросе менюшного скрипта происходит выборка из этой таблицы всех записей и проверка для каждой записи поля status. Если выставлено значение closed - пункт не отображается.

Конечно, лучше присваивать содержимому ячеек меньше символов, в качестве статуса лучше употреблять что-то вроде Y/N. А этот пример для наглядности.

Добавил: и еще можно добавить в таблицу числовое поле order, которое будет отвечать за порядок отображения пунктов меню.

   
 
 автор: tAleks   (09.12.2006 в 17:35)   письмо автору
 
   для: aexb   (09.12.2006 в 14:28)
 

Все это хорошо, но вот в чем вопрос:

Не будет ли дополнительный запрос напрягом? На скока я понимаю, то чем меньше запросов в скриптах, тем быстреей работает сайт, и тем меньше нагрузки на сервер.

   
 
 автор: cheops   (09.12.2006 в 22:00)   письмо автору
 
   для: tAleks   (09.12.2006 в 17:35)
 

Да, это так, но вообще без дополнительных запросов построить удобный и функциональный сайт не получится. Чем больше вы хотите предоставить удобств пользователю, тем больше будет нагрузка на сервер, и наоборот. За любые улучшения приходится чем-то расплачиваться, либо скоростью, либо памятью, либо временем разработки, либо всем вместе взятым.

   
 
 автор: tAleks   (12.12.2006 в 13:18)   письмо автору
 
   для: cheops   (09.12.2006 в 22:00)
 

Ну а че делать-то? Делать менюшку на БД или не делать?
Сколько вообще предельно допустимое количество запросов на одной странице? Ну если эти запросы по объему примерно как запрос менюшки в 30-50 строк из базы.

   
 
 автор: cheops   (12.12.2006 в 15:47)   письмо автору
 
   для: tAleks   (12.12.2006 в 13:18)
 

>Сколько вообще предельно допустимое количество запросов на одной странице?
20-30 я думаю будет выполняться легко и без последствий для вас и сервера. Обычно проблема не в количестве запросов, а в скорости их выполнения - чем быстрее выполняется запрос, тем короче очередь и тем быстрее работает сам сервер. Проблемы начинаются, когда много медленных запросов (читай многотабличных).

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования