PHP 4 на практике

       

Проект: генератор страниц


Хотя в большинстве созданных мною web-сайтов основное содержимое страниц формировалось на основании информации, прочитанной из базы данных, всегда найдется несколько страниц, которые практически не изменяются. В частности, на них могут выводиться сведения о команде разработчиков, контактные данные, реклама и т. д. Я обычно храню эту «статическую» информацию в отдельной папке и использую сценарий РНР для ее загрузки при поступлении запроса. Конечно, у вас возникает вопрос — если это статическая информация, для чего нужен сценарий РНР? Почему бы не загружать обычные страницы HTML? Преимущество РНР заключается в том, что вы можете использовать шаблоны и вставлять статические фрагменты по мере необходимости.

Ссылки для загрузки различных статических файлов строятся динамически. В обобщенной форме ссылка выглядит так:

<а href = "<?=$site_path:?>/static.php?content=$content">Static Page Name</a>

Начнем с создания статических страниц. Для простоты я ограничусь тремя страницами, содержащими информацию о сайте (листинг 9.12), рекламу (листинг 9.13) и контактные данные (листинг 9.14).

Листинг 9.12.

Информация о сайте (about.html)

<h3>About PHPRecipes</h3>

What programmer doesn't mix all night programming with gourmet cookies. Here at PHPRecipes. hardly a night goes by without one of our coders mixing a little bit of HTML with a tasty plate of Portobello Mushrooms or even Fondue. So we decided to bring you the best of what we love most: PHP and food!

<p>

That's right, readers. Tutorials, scripts, souffles and more. <i>0nly</i> at PHPRecipes.

Листинг 9.13.

Рекламная информация (advert_info.html)

<h3>Advertising Information</h3>

Regardless of whether they come to learn the latest PHP techniques or for brushing up on how

to bake chicken, you can bet our readers are decision makers. They are the Industry



professionals who make decisions about what their company purchases.

For advertising information, contact <a href - "mailto:ads@phprecipes.com


">ads@phprecipes.com</a>.

Листинг 9.14.

Контактные данные (contact.html)

<h3>Contact Us</h3>

Have a coding tip? <br>

Know the perfect topping for candied yams?<br>

Let us know! Contact the team at <a href= "mailto:theteam@phprecipes.com">team@phprecipes.com</a>.

Переходим к построению страницы static.php, которая выводит запрашиваемую статическую информацию. В этот файл (см. листинг 9.15) включаются компоненты страниц нашего сайта и инициализационный файл site_init.tpl.

Листинг 9.15.

Общий вывод статических страниц (static.php)

<?

// Файл: static.php

// Назначение: отображение запрашиваемых статических страниц.

// ВНИМАНИЕ: предполагается, что файл "site_init.tpl" и все

// статические файлы находятся в том же каталоге.

// Загрузить функции и переменные include("site_init.tpl"):

// Вывести заголовок show_header($site_name);

// Вывести запрашиваемое содержание include("$content.html"):

// Вывести колонтитул show footer( );

?>

Теперь все готово к построению основного сценария. Просто включите в страницу

следующие ссылки:

<а href = "static.php?content=about">Static Page Name</a></br>

<a href = "static.php?content=advert_info">Advertising Information</a></br>

<a href = "static.php?content=about">Contact Us</a></br>

Если щелкнуть на любой из этих ссылок, в браузере загружается соответствующая статическая страница, внедренная в static.php!


Содержание раздела