Joomla портал
seo seo Subscribe
seo
0
seo

Основы SQL даны в приложении 3.

Теперь добавим в данную таблицу три записи:

INSERT INTO ‘static1 VALUES (‘main’, ‘Главная страница’);

INSERT INTO ‘static’ VALUES (‘prices’, ‘Прайс-листы’);

INSERT INTO ‘static’ VALUES (‘contacts’, ‘Контакты’);

Каждая запись в данной таблице соответствует одной странице сайта. В

нашем случае будут три страницы — Главная страница, Прайс-листы и

Контакты. Конечно, на практике содержимое данных страниц не будет состоять из

одного-двух слов, а будет представлять собой полноценную HTML-страницу,

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

14.4.2. Таблица cats

Таблица cats (сокращение от categories— ничего общего с котами!) будет

содержать четыре поля:

? id — номер раздела. Поле автоматически увеличивается (autoincrement),

чтобы нам было удобнее создавать разделы;

? title — название раздела (будет отображено в меню сайта);

? root — номер корневого раздела. Если номер корневого раздела равен

-1, то перед нами корневой раздел. Если же поле root содержит

положительное значение, то перед нами — подраздел, а поле root указывает

номер его родительского раздела. Значение по умолчанию для этого поля

-1, т. е. если поле root не задано, мы подразумеваем, что будет создан

корневой (родительский) раздел;

? txt — описание раздела, может содержать любую информацию.

Структура таблицы cats изображена на рис. 14.3.

Запрос для создания данной таблицы выглядит так:

CREATE TABLE ‘cats’ (

‘id’ int(ll) NOT NULL auto_increment,

Глава 14. Реализация основных функций CMS 169_

•title1 varchar(lOO) default NULL,

‘root1 int(ll) default ‘-1\

‘txt’ text,

PRIMARY KEY (‘id’)

) DEFAULT CHARSET=cpl251;

Рис. 14.3. Структура таблицы cats

Теперь добавим в нашу таблицу несколько разделов:

INSERT INTO ‘cats’ VALUES (1, ‘Дисковые пилы для стали’, -1, ‘Информация

о разделе’);

INSERT INTO ‘cats’ VALUES (2, ‘Дисковые пилы для алюминия’, -1, NULL);

INSERT INTO ‘cats’ VALUES (3, ‘Линии обработки стальных профилей’, -1,

NULL);

INSERT INTO ‘cats’ VALUES (4, ‘Центры обработки листового металла’, -1,

NULL) ;

INSERT INTO ‘cats’ VALUES (5, ‘Отрезные станки’, 3, NULL);

INSERT INTO ‘cats’ VALUES (6, ‘Линии сверления профилей’, 3, NULL);

INSERT INTO ‘cats’ VALUES (7, ‘Роботы для обработки профилей’, 3, NULL);

Первые четыре раздела являются корневыми, т. е. родительскими. Разделы

5—7 являются подразделами раздела с номером 3.

14.4.3. Таблица pages

Таблица pages, как и таблица cats, тоже состоит из четырех полей:

? id — идентификатор (номер) страницы;

? cat — номер раздела, в который помещена страница;

? header — заголовок страницы (будет выводиться в меню);

? content — содержимое страницы.

170

Часть IV. Разработка собственной CMS

Структура таблицы приведена на рис. 14.4, а для ее создания используется

следующий SQL-запрос:

CREATE TABLE •pages1 (

fidf int(ll) NOT NULL auto_increment,

•cat1 int(ll) NOT NULL,

‘header1 varchar(250) default NULL,

‘content1 text,

•price1 varchar(250) default NULL,

‘rd’ varchar(250) default NULL,

PRIMARY KEY (‘id’)

) DEFAULT CHARSET=cpl251;

Рис. 14.4. Структура таблицы pages

Для добавления новых страниц используется следующий SQL-оператор:

INSERT INTO ‘pages1 VALUES (0, номер, ‘заголовок1, ‘содержимое’);

Номер страницы можно не указывать (0), поскольку значение поля будет

автоматически увеличено. Но не забывайте при добавлении страницы

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

содержимое страницы.

14.5. Иерархическая структура сайта.

Создание иерархического меню

14.5.1. Алгоритм работы меню

Сейчас нам предстоит самое сложное — реализовать вывод меню. Если

переменная $р не указана, то будут выведены родительские разделы меню и

главная страница, как показано на рис. 14.5 (разрабатываемая в книге CMS

Глава 14. Реализация основных функций CMS

171

уже успешно используется на некоторых сайтах, поэтому все снимки экрана

будут сделаны с реальных сайтов).

Рис. 14.5.

seo
5th Фев 2011
Теги:
seo

Написать ответ

seo
 
Все права защищены © 2023 Joomla портал
 
 
seo