Часть третья
(Продолжение. Начало в Dev-КВ №3'2012)
Возраст - делу не помеха
Порассуждаем на насущную тему - о шансах человека, старше 40 лет оказаться за рубежом, на учёбе или в эмиграции. К сожалению, в этой возрастной категории на стипендию Эдмунда Маски рассчитывать уже нечего. Впрочем, как и на участие в любых других образовательных программах. Практически все они "заточены" под молодёжь. Но зато никто пока не отменял, например, ежегодную Green Card Lottery USA, которая даст возможность жить в США, если, конечно, вы её выиграете. Можно уехать не только в США, но и во вполне благополучную и сытую Австралию (потенциальный эмигрант не должен быть старше 45 лет, подробности почитать можно здесь) или в Канаду, где возрастной ценз ещё выше, например, по федеральной программе "Квалифицированный специалист" (шансы на эмиграцию в Канаду можно оценить на официальном сайте.
Добавлю, что у программиста есть все шансы оказаться там, где он захочет жить, кроме, пожалуй, США. Да и там можно по рабочей визе совершенно спокойно отработать до пяти лет. Но, самое главное, - у профессиональных программистов всегда полно командировок - и в США, и в Европу, и вообще, куда угодно. Так что с какого-то момента становится не так уж важно, где ты живёшь.
Снова PHP
В прошлый раз я получил вполне обоснованный читательский упрёк в излишней примитивности примеров программирования. Что ж, в этот раз постараюсь дать чуть больше материала. Но себе не изменю - примеры будут простыми, иначе начинающие веб-мастера (а они на форуме "Компьютерных вестей" бывают) просто ничего не поймут.
Остановимся на создании простого, но полнофункционального веб-сайта. К сожалению, тема является столь обширной, что её придётся разделить на отдельные части (в одной "куче" такой урок будет абсолютно нечитабельным, и вы ничего не поймёте).
Обычный сайт должен иметь несколько стандартных "фич", используемых практически везде. Это авторизация, возможность размещать какой-либо контент и обсуждать его в комментариях. В принципе, большинство порталов строится именно на этих "трёх китах".
Но нам с вами до этого далеко. Надо сделать, для начала, хотя бы что-нибудь самое простое. И чтобы оно работало.
Итак, создаём наш первый файл. Не мудрствуя лукаво, назовём его index.php
В нём пишем PHP-код
<?php require 'header.html'; //Заготовка нашего сайта require 'footer.html'; ?>
Уже в этом маленьком примере видна мощь PHP, который даёт возможность выводить сторонние файлы (даже расположенные удалённо, если это позволяет конфигурация PHP на сервере). Для этого используются конструкции require и include. Разница между ними заключается в том, что require подключает файлы до исполнения сценария PHP, а include - после. В некоторых случаях это может оказаться очень важным. Например, если подключаемый скрипт вычисляет некое выражение, значение которого затем используется для дальнейших действий в результирующем файле - тогда подойдёт только конструкция require. И ещё - файлы, которые мы выводим, должны быть расположены в одной директории с файлом index.php, иначе путь к ним придётся указывать в явном виде, или так (относительный путь):
require('../directory/config.php');
или так (полный путь от корневой папки):
require('/home/media/spt/config.php');
Первый вариант предпочтительнее, так как при переносе сайта другой сервер, где иная структура папок и другие их названия, он тоже будет работать.
Бывает, что подключаемых файлов достаточно много. Тогда к конструкциям можно добавить постфикс _once (получается require_once и include_once). В этом случае, вы можете быть уверены, что включённый однажды файл не будет выведен повторно. Добавлю, что это - конструкции, а не функции, и скобок они не требуют.
Далее всё просто: файл header представляет собой "шапку" страницы, а footer - "подвал". Именно в этих файлах и находится соответствующий код, а также HTML и всё, что необходимо. В главном файле ничего лишнего нет. Такая конструкция даёт возможность отделить код от разметки гипертекста и сделать его проще. Имея даже тысячи страниц сайта, вы легко сможете изменить "подвал", доработав единственный файл footer.
Содержание header.html может быть таким, для начала:
<html> <head><title>Main portal</title></head> <body bgcolor=blue> <table bgcolor=blue width=50% height=3%> <tr> <td><a href=10.php style=”color:#FFFFFF; text-decoration:none”>СОБЫТИЯ</a></td> <td><a href=11.php style=”color:#FFFFFF; text-decoration:none”>НОВОСТИ</a></td> <td><a href=12.php style=”color:#FFFFFF; text-decoration:none”>СТАТЬИ</a></td> <td><a href=13.php style=”color:#FFFFFF; text-decoration:none”>ФОРУМ</a></td> <td><a href=14.php style=”color:#FFFFFF; text-decoration:none”>АРХИВ</a></td> </tr> </table>
В файл footer.html можно включить переменную, которую мы с вами создавали в первой части:
<?php $kvby = '© Компьютерные Вести, 2009-2012.'; echo "<br><font color = 'white'>$kvby</font>" ?> </body> </html>
Естественно, что мы пока рассматриваем простейшие варианты страничек, в которых нет ни мета-тегов, ни файлов подключения скриптов и стилей (все они хранятся между HTML-тегами <head></head>), а также содержания (оно будет выводится между тегами <body></body>).
Стоит отметить, что по умолчанию сервер Apache из корневой и любой другой директории сайта обычно выводит файлы index.php или index.html. Эти настройки прописаны в конфигурационном файле сервера httpd.conf. Их можно изменить (если вам нужен другой индексный файл) в файлах с расширением .htaccess, для каждого каталога вашего сайта в отдельности. Строка в .htaccess будет выглядеть примерно так:
DirectoryIndex /katalog_4/dbs.php
Теперь в наш файл index.php добавим ещё одну строку (она выделена цветом):
<?php //Заготовка нашего сайта require 'header.html';
require 'content.php';
require 'footer.html'; ?>
Необходимо также создать файл content.php (пока пустой) и сохранить его в корневой папке сайта. Внешне ничего не изменится - ошибки не будет, так как файл content.php уже существует. Добавим в него только табличку, чтобы она заняла пустое место в центре сайта:
<table width=100% height=85% style="background-color:#ffffff; color:#000000"> <tr> <td>Контент</td> </tr> </table>
У нас получилась небольшая заготовка сайта в цветовой гамме "Компьютерных Вестей". Правда, с минимальной вёрсткой и без контента, зато работающая и наглядно демонстрирующая некоторые возможности PHP.
(Продолжение следует...)
Эдуард ТРОШИН
![Версия для печати Версия для печати](https://www.kv.by/sites/all/modules/print/icons/print_icon.png)
Горячие темы