Стать программистом после сорока...

Часть третья

(Продолжение. Начало в 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 = '&copy; Компьютерные Вести, 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.

(Продолжение следует...)

Эдуард ТРОШИН

Версия для печатиВерсия для печати

Рубрики: 

  • 1
  • 2
  • 3
  • 4
  • 5
Всего голосов: 0
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!