Forum Webscript.Ru

Программирование => PHP => Тема начата: Алексей от 14 Апреля 2005, 12:43:21

Название: Создание модуля "страниц" в цмс
Отправлено: Алексей от 14 Апреля 2005, 12:43:21
Здравствуйте.
Возникла необходимость создать модуль, который бы обеспечивал бы создание разделов и страниц как подчинённых к какому то определённому разделу.
Хочется поинтересоваться у гуру, как это лучше осуществить, интересует реализация подобного.

Есть идея создавать сначала некий "индексной файл", который бы отображал как название раздела, так и его какие то элементы, вроде содержание до и после списка подчинённых страниц, но эта схема меня не устраивает т.к. хочется сделать всё по принципу неограниченного дерева, что бы к одной странице можно было бы сделать Н-ное количество подчинённых страниц.... не совсем понятно наверно?... Ну вот так например:

Раздел "PHP"

Основы
--Работа с куки
--Работа с сессиями
Приёмы
--Обработка данных
--Обработка формы
Практика
--Написание госевой
------Зачем нужна гостева?
------Кому нужна госевая?

и т.д..

Всё это ест. должно работать через адм. интерфейс, легко и понятно.
Название: Создание модуля "страниц" в цмс
Отправлено: Croaker от 14 Апреля 2005, 14:13:17
Разделите меню и наполнение. Отдельно стройте дерево разделов, каждому разделу назначайате нужный вам тип (страница, новости, гостеввя) и ассоциируйте с некой функциональностью.

Страница 1 - тип документ - работа модуля "документ"
Страница 2 - тип новости - работа модуля новости
----Страница 2.1 - тип документ - работа модуля "докумени"

и .т.д.
Название: Создание модуля "страниц" в цмс
Отправлено: Алексей от 15 Апреля 2005, 13:36:19
KEY group_id (group_id,parameter_id) - это что такое?
Название: Создание модуля "страниц" в цмс
Отправлено: hoblin от 16 Апреля 2005, 14:21:40
Цитировать
Алексей:
KEY group_id (group_id,parameter_id) - это что такое?


Честно? Хрен его знает. Экспорт структуры таблиц phpMyAdmin 2.3.0

Но дело не в этом. я привёл уже отлаженый и рабочий пример. Если в нём и есть ошибки, то они себя за пол года работы скрипта ещё не проявили. Основную функцию бесконечной вложенности эта структура выполняет.
БД products на localhost

БД products на localhost    
# phpMyAdmin MySQL-Dump  
# version 2.3.0  
# [url]http://phpwizard.net/phpMyAdmin/[/url]  
# [url]http://www.phpmyadmin.net/[/url] (download page)  
#  
# Хост: localhost  
# Время создания: Апр 16 2005 г., 13:26  
# Версия сервера: 3.23.53  
# Версия PHP: 4.3.0  
# БД : `products`  
# --------------------------------------------------------    
#  
# Структура таблицы `group_parameters`  
#  
 CREATE TABLE group_parameters (    group_id int(11) NOT NULL default \'0\',    parameter_id int(11) NOT NULL default \'0\',    obj_param_value text NOT NULL,    KEY group_id (group_id,parameter_id)  ) TYPE=MyISAM;  

# --------------------------------------------------------  
 
#  
# Структура таблицы `obj_groups`  
#    
CREATE TABLE obj_groups (    group_id int(11) NOT NULL auto_increment,    obj_id int(11) NOT NULL default \'0\',    obj_parent_id int(11) NOT NULL default \'0\',    KEY obj_id (obj_id),    KEY group_id (group_id)  ) TYPE=MyISAM;
 
# --------------------------------------------------------    

#  
# Структура таблицы `obj_main`  
#    
CREATE TABLE obj_main (    obj_id int(11) NOT NULL auto_increment,    obj_name text,    obj_denotation text,    obj_category_id int(11) default NULL,    obj_material_id int(11) default NULL,    obj_prod_id int(11) NOT NULL default \'0\',    PRIMARY KEY  (obj_id)  ) TYPE=MyISAM COMMENT=\'Перечень обьектов\';