Модульное строение страницы

Страницы сайтов обычно строятся по модульному принципу — например,
наверху каждой страницы находится название сайта с логотипом,
внизу — знак охраны авторских прав, слева — навигационная панель, посредине — собственно содержание web-страницы (статья, рецензия и т. п.).
При этом на всех страницах все части, кроме содержания, одинаковы (т. е. одинаковая шапка, панель навигации т. п.).

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

Каждая наша страница будет состоять из четырех частей: верхняя часть с названием сайта,
нижняя часть с информацией об авторских правах, левая часть с навигацией и информационная правая часть.

Каждая страница будет "собираться" из 5 файлов — по одному для каждой части и плюс еще файл,
объединяющий все четыре части. Вот перечисление всех необходимых файлов:

xxxxx.php — файл с информацией. Именно этот файл и будет набирать посетитель в строке браузера.
Включает в себя файл main.inc. Имя этого файла будет свое для каждой страницы сайта.
В нашем примере таких страниц будет три: 1.php, 2.php и 3.php.
main.inc — файл, задающий общее расположение элементов на web-странице.
Включает в себя все остальные файлы, кроме xxxxx.php.
header.inc — файл верхней частью страницы (с названием сайта).
footer.inc — файл нижней частью страницы (с авторскими правами).
nav.inc — файл с навигацией по сайту (распологается в левой части каждой страницы).
Приведем код для каждого файла.

Файл 1.php (это один из информационных файлов xxxxx.php):

<?
$content="
<h2>Мебель</h2>
<p>Добро пожаловать на наш сайт!...</p>
";
include ("main.inc");
?>

Как вы видите, тут мы заводим переменную $content, в которую записываем информафионное
содержание нашей страницы. В эту переменную можно записывать в том числе и теги (что мы, собственно говоря, и делаем).
Кроме того в эту страницу включается посредством оператора include файл main.inc. include мы делаем
после объявления переменной $content, так как в файле main.inc эта переменная будет использоваться.
Обратите также внимание на то, что все содержимое файла 1.php мы заключаем в теги php.

Файлы 2.php и 3.php мы делаем абсолютно аналогично:

<?
$content="
<h2>Столы</h2>
<p>Наша фирма рада предложить Вам следующие столы ...</p>
";
include ("main.inc");
?>
<?
$content="
<h2>Шкафы</h2>
<p>Мы рады предложить Вам следующие модели шкафов ...</p>
";
include ("main.inc");
?>

Файл main.inc:

<html>
<head>
<title></title>
</head>

<body>
<table cellspacing="2" cellpadding="2" border="0" width=100%>
<tr>
<td colspan="2">
<?include ("header.inc");?>
</td>
<tr>
<tr>
<td width="20%"></td>
<td></td>
</tr>
<tr>
<td colspan="2" align=right>
<?include ("footer.inc");?>
</td>
</tr>
<table>
</body>
</html>

Тут мы, по сути дела, задаем макет для нашей html-странички — задаем теги <head>, <body> и другие,
задаем расположение элементов на странице посредством таблицы. В первую ячейку таблицы мы вставляем
файл заголовка с названием сайта:

...
<td colspan="2">
<?include ("header.inc");?>
</td>
...

в последнюю — файл с авторскими правами:

...
<td colspan="2" align=right>
<?include ("footer.inc");?>
</td>
...

Средний ряд таблицы состоит из двух ячеек, в которые мы вставляем файл с навигацией и значение переменной $content:

<tr>
<td width="20%"><?include ("nav.inc");?></td>
<td><?print $content?></td>
</tr>

Переходим к файлам header.inc, footer.inc и nav.inc.

Файл header.inc:

<h1>Мебельный сайт</h1>

Файл footer.inc:

(c) copywrite alexeev igor, 2002-2003
Файл nav.inc:

<a href="1.php">Главная</a><br>
<a href="2.php">Столы</a><br>
<a href="3.php">Шкафы</a>

Эти файлы одинаковы для всех страниц сайта. В них мы описываем верхнюю и нижнию части для каждой
web-страницы сайта, а также панель навигации.

Все, стараницы созданы! Разместите их в одном каталоге на вашем web-сервере, и через браузер
просмотрите странички 1.php, 2.php и 3.php. Слева на каждой страничке будет панель навигации, справа —
содержательная часть страницы, наверху и внизу — название сайта и информация об авторских правах.
Если вы просмотрите через браузер html-код для запрашиваемых страниц 1.php, 2.php и 3.php,
то никакого кода php, естественно, не увидите — тем будет только сгенерированный web-сервером html-код.