Материал: Мова PHP. Розробка сайту для туристичного агентства

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Результатом роботи PHP є звичайні сторінки мовою HTML, тобто людина, що переглядає веб-сайт, може не здогадуватись про те, що веб-сторінка є не статичною, а була згенерована. Код PHP (тобто деякий текст програми, що виконується сервером і результатом виконання якої є веб-сторінка) може бути встроєний всередину статичного коду HTML.

До найбільших сайтів, що використовують PHP, відносяться Facebook, В контакті, Wikipedia, YouTube.

.4 Переваги і недоліки мови PHP

Вважається, що в області програмування PHP - одна з найпопулярніших скриптових мов (разом з JSP, Perl і мовами, використовуваними в ASP.NET) завдяки своїй простоті, швидкості виконання, багатій функціональності, багатоплатформеності і розповсюдженню початкових кодів на основі ліцензії PHP.

Популярність у галузі побудови веб-сайтів визначається наявністю великого набору вбудованих засобів для розробки веб-додатків.

Основні з них[5]:

Автоматичне вилучення POST і GET-параметрів, а також змінних оточення веб-сервера в зумовлені масиви;

Файлові функції успішно обробляють як локальні, так і віддалені файли;

Автоматична відправка HTTP-заголовків;

Робота з cookies і сесіями;

Обробка файлів, що завантажуються на сервер;

Робота з HTTP заголовками і HTTP авторизацією;

Робота з XForms;

Робота з віддаленими файлами і сокетами.

В даний час PHP використовується сотнями тисяч розробників. Згідно з рейтингом Tiobe[9], що базується на даних пошукових систем, у грудні 2009 року PHP знаходиться на 3 місці серед мов програмування (поступаючись Java і C), піднявшись за рік на дві позиції. Від того часу за статистикою на сьогоднішній день, PHP у популярності впала на 3 позиції.

Мова явно підтримує HTTP cookies відповідно до специфікацій Netscape. Це дозволяє проводити встановлення та читання невеликих сегментів даних на стороні клієнта.надає можливість організації роботи з користувачем протягом сеансів (сесій). В сесії можна зберігати різні дані, включаючи об'єкти.

До недоліків PHP відносять наступні:

Незручність дизайну мови

Змінні з символом «$»

Складні назви поширених функцій (html_entities_decode, mysql_select_db, nl2br тощо)

Не підтримується Unicode в версіях до 6.0

Якщо ж говорити більше з функціональної точки зору, то тут теж далеко не все гладко. Наприклад, рекурсія. Рекурсія є механізмом, в якому функція викликає сама себе. Прикладом функції, яка використовує рекурсію, є функція швидкого сортування. На жаль в PHP не дуже добре реалізована рекурсія. Зєєв, один з розробників PHP, говорить наступне[7]: "PHP 4.0 використовує стек для інтенсивного потоку даних, а не за допомогою накопичування. Це означає, що його толерантність рекурсивних функцій значно нижче, ніж в інших мовах."

Потім конфлікт імен. Припустимо, хтось створює PHP-модуль, який може читати файли. Одна з функцій цього модуля називається читання. І чужий модуль може читати веб-сторінки, а також містить функції читання. Тоді неможливо використовувати ці модулі разом, тому що PHP не буде знати, яку саме функцію читання викликати. Просте рішення для цього - простір імен. Так і було запропоновано для PHP 5, але, на жаль, реалізовано воно не було. Тепер функції повинні бути з префіксом імені модуля, щоб уникнути конфлікту імен. Це, власне, і призводить до страшно довгих імен, наприклад, xsl_xsltprocessor_transform_to_xml що робить код важчим для писання і читання.

І останнє, Unicode можна використовувати для будь-якої мови в світі, наприклад, китайської, арабської та іврит. Незважаючи на всі інші серйозні мови програмування, які підтримують Unicode протягом багатьох років, PHP все ще дуже важко з цим. Unicode запланований на PHP 6, і нам все одно доведеться довго чекати, перш ніж PHP почне підтримувати цю тривіальну функцію.

.5 Базовий синтаксис

Перше, що потрібно знати щодо синтаксису PHP - це те, як він вбудовується в HTML-код, як інтерпретатор довідається, що це код мовою PHP. Найчастіше використовується варіант тегу <?php ?>, і іноді скорочений варіант <? ?>.

Програма на PHP (та й на будь-якій іншій мові програмування) - це набір команд (операторів). Оброблювачеві програми необхідно якось відрізняти одну команду від іншої. Для цього використовуються спеціальні символи - роздільники. У PHP оператори розділяються так само, як і в C Perl або Pascal - кожен вираз закінчується крапкою з комою.

Закриваючий тег «?>» розуміється як кінець інструкції, тому перед ним крапку з комою не ставлять. Наприклад, два наступні фрагменти коду еквівалентні:

<?php

echo "Hello, world!"; // крапка з комою

// наприкінці команди

// обов'язкова

?>

<?php"Hello, world!"

?>

Змінна в PHP позначається знаком долара, за яким слідує її ім’я. Наприклад:

$my_var

Імена змінних є чутливими до регістра, тобто змінні $my_var і $My_var різні.

Імена змінних формуються по таким же правилам, що й інші імена в PHP: правильне ім’я змінної повинно починатися з букви або символу підкреслення з наступною послідовністю в будь-якій кількості буквами, цифрами або символами підкреслення.

У PHP змінні завжди присвоюються за значенням. Тобто коли ви присвоюєте вираз змінній, усі значення оригінального виразу копіюється в цю змінну. Це означає, наприклад, що після присвоєння одної змінної значення іншої змінної зміна однієї з них не впливає на значення іншої.

<?php

$first = ' Text '; // Присвоюємо $first значення ' Text '

$second = $first; // Присвоюємо $second значення $first

$first = ' New text '; // Змінюємо $first на ' New text '"Змінна з ім'ям first "."дорівнює $first <br>";

// виводимо значення $first"Змінна з ім'ям second ". "дорівнює $second";

// виводимо значення $second

?>

Результат роботи цього скрипта буде наступним:

Змінна з ім'ям first дорівнює New text

Змінна з ім'ям second дорівнює Textпідтримує вісім простих типів даних.

Чотири скалярних типи:(логічний);(цілий);(з плаваючою крапкою);(стрічковий).

Два змішаних типи:(масив);(об'єкт).

Два спеціальних типи:(ресурс);.

У PHP не прийняте явне визначення типів змінних. Переважно це робить сам інтерпретатор під час виконання програми в залежності від контексту, у якому використовується змінна.

.6 Особливості інтерпретатораскрипти зазвичай обробляються інтерпретатором в порядку, що забезпечує кроссплатформенність розробленого додатка[5]:

. лексичний аналіз вихідного коду та генерація лексем,

. синтаксичний аналіз отриманих лексем,

. генерація байт-коду

. виконання байт-коду інтерпретатором (без створення виконуваного файлу).

Для збільшення швидкодії додатків можливе використання спеціального програмного забезпечення, так званих акселераторів. Принцип їх роботи полягає в кешуванні одного разу згенерованого байт-коду в пам'яті і / або на диску, таким чином, з процесу роботи програми виключаються етапи 1-3, що в загальному випадку веде до значного прискорення роботи.

Важливою особливістю є те, що розробнику немає необхідності піклуватися про розподіл і звільнення пам'яті. Ядро PHP реалізує засоби для автоматичного керування пам'яттю. Вся виділена пам'ять повертається системі після завершення роботи скрипта.

Інтерпретатор PHP має спеціальний конфігураційний файл - php.ini, що містить безліч налаштувань, зміна яких впливає на поведінку інтерпретатора. Є можливість відключити використання ряду функцій, змінити обмеження на використовувану скриптом оперативну пам'ять, час виконання, обсяг завантажуваних файлів, налаштувати журнал роботи помилок, роботу з сесіями та поштовими сервісами, підключити додаткові розширення, а також багато іншого. Можливо дроблення великого конфігураційного файлу на частини. Наприклад, широко поширена практика винесення налаштувань розширень в окремі файли. Параметри інтерпретатора можуть бути перевизначені в файлах конфігурації HTTP-сервера (наприклад,. Htaccess в Apache) або в самому скрипті під час виконання за допомогою команди ini_set.[2]


2. ПРАКТИЧНА ЧАСТИНА

Завдання. За допомогою мови гіпертекстової розмітки HTML написати ієрархічний веб-сайт з трьох сторінок на довільну тему. Описати процес створення, включно з скріншотами.

Тому, на мою думку, розроблення сайту для туристичного агенства є досить актуальним завданням.

Перед тим, як починати процес розроблення і самого, власне, програмування сайту, необхідно собі придумати, а ще краще нарисувати, схему структури сайту (Рис. 2.1). Під структурою сайту розумітимемо кількість сторінок сайту, їх призначення, заголовки, виділення головної сторінки і ієрархічних рівнів та функціональних зв’язків між ними.

Нехай, сайт складатиметься з головної сторінки, на якій заголовком буде назва туристичного агенства, і три другорядні сторінки, на яких буде відображатись інформація про три головні напрямки туризму: локальний туризм (місто Львів), внутрішній туризм (Україна) і зовнішній туризм (поїздки закордон).

скриптова мова сайт гіпертекстовий

Рис. 2.1 Схема структури сайту

Слід підкреслити, що доброю манерою і, в певній мірі традицією, є обов’язково розміщати на другорядній сторінці (переважно в верхньому лівому куті і/або унизу сторінки) гіперпосилання у стилі «ß Назад» для можливості повернення на головну сторінку та покращення механізму навігації по сайту вцілому.

Успіх і популярність сайту неабиякою мірою залежить від стилю і кольорової гами сторінок. Занадто яскрава і різнокольорова сторінка обов’язково відлякає переглядача, в той час як дуже тьмяна і одно-, двоколірна не зацікавить взагалі. Тому дуже важливо підібрати правильний фон. У нашому випадку, в якості фону використаємо заздалегідь створену картинку:

Рис. 2.2 Фон головної сторінки

Для того, щоб створити фон сторінки з файлу картинки, наприклад, .jpeg формату, існує спеціальна функція:

background-image: url(шлях до файлу) | none | inherit

Приклад:
<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>background-image</title>

<style>{image: url(images/bg.jpg); color: #c7b39b;

}

</style>

</head>

<body>

<p>...</p>

</body>

</html>

Далі, аналогічно, створимо фон для другорядних сторінок:


Тепер, коли фони вибрані і проставлені у відповідних файлах main.html, lviv.html, ukraine.html і world.html можна створювати гіпертекстні посилання. Створюються такі зв’язки за допомогою директиви:

<p>

<a href=file://[шлях до файлу]> відображуваний текст!</a>

</p>

Отже, до файлу main.html дописуємо три рядки:

<p>

<a href=file:// /C:/Users/User/tourdelviv/lviv.html> Львів!</a>

</p>

<p>

<a href=file:// /C:/Users/User/tourdelviv/ukraine.html> Україна!</a>

</p>

<p>

<a href=file:// /C:/Users/User/tourdelviv/world.html> Світ!</a>

</p>

Тег <p> ... </p> означає початок і кінець так званого параграфу. Тобто кожен рядок, що поміщений усередину такого тега починається з нового рядка. Отже, результат:

Рис. 2.4 Створення посилань на другорядні сторінки

Для перевірки, натискаємо на кожен рядок, та слідкуємо в адресній стрічці браузера, який файл відповідно відкривається.

Все працює вірно, однак такий вигляд є не надто привабливим. Тому, для того, щоб на посилання хотілося клікнути і перейти далі, є ще один спосіб відображення лінку - знову ж таки, картинка! А щоб при натисканні на картинку активовувався перехід, є спеціальний метод onclick, яким ми і скористаємось трохи згодом. Адже спочатку треба підготувати ресурси, тобто самі файли картинок.

Дуже важливо зберігати вже заданий фоном стиль. Враховуючи це та інші ознаки, вибираємо наступні картинки в форматі .png:

Рис. 2.5 Посилання Львів

Рис. 2.6 Посилання Україна

Рис. 2.7 Посилання Світ

Коли ресурси готові, додаємо їх на головну сторінку, та закріплюємо за ними посилання:

<table align="center" border="0" cellpadding="1" cellspacing="1" height="219" style="width: 150px;" width="1033">

<tbody>

<tr>

<td style="text-align: center;">

<div>Відпочинок за кордоном. Бронювання турів.">

<a href="#"785602.files/image008.gif">

Рис. 2.8 Кінцевий вигляд головної сторінки

На другорядних сторінках подамо текстову інформацію про тури кожного з напрямків туризму. Наприклад:

<title>Екскурсії у Львові</title>

<!--<base href="#"785602.files/image009.gif">

Рис. 2.9 Вигляд другорядної сторінки

Аналогічно заповнюються і дві інших другорядних сторінки. Також можна додати якісь фотографії, картинки для візуального сприйняття. Тим більше, два рівні ієрархічної навігаційної структури - це далеко не максимум, і можна і треба розширювати таку структуру, додаючи до другорядної сторінки гіперпосилання на сторінки третього рівня і так далі.


ВИСНОВКИ

Під час виконання даної розрахункової графічної роботи в теоретичній частині я розкрила та пояснила поняття мови PHP, історію її розвитку та поширення, можливості, недоліки і переваги, а також навела положення базового синтаксису, які супруводжувались прикладами використання тих чи інших елементів. У практичній частині я створила невеликий сайт для туристичного агенства з схематичним зображенням його структури, покроковими інструкціями створення та деякими рекомендаціями щодо оформлення.


СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ

1. Гриценко В. І. Інформаційні технології в освіті для всіх / В. І. Гриценко // Кафедра ЮНЕСКО, Міжнародний науково-навчальний центр інформаційних технологій та систем Національної академії наук і Міністерства освіти і науки України. - К.:Наукова думка, 2002.

. Гутманс Е. PHP5. Професійне програмування / Е. Гутманс, С. Баккен, Д. Ретанс. - К., 2011.

. Мар’їна О. Ю. Веб-технології: Нові можливості розвитку комунікаційного серидовища / О. Ю. Мар’їна. - К., 2012. - Вісник № 36. УДК 021:004.8

. Писаренко В. П. Використання інтернет-технологій: Перспективи розвитку / В. П. Писаренко // ВНЗ Укоопспілки «Полтавський університет економіки і торгівлі». - Полтава: Дивосвіт, 2009.

. Суерінг С. PHP і MySQL. Біблія програміста. 2-е видання / С. Суерінг, Т. Конверс, Д. Парк. - К., 2013.

. Штанько В.І. Сучасні інформаційно-комп’ютерні технології як чинник трансформацій соціокультурної реальності / В. І. Штанько // [рецензент: д. філос. н. Цехмістро І.З.]. - Б.м, 2010. - № 610: Філософія і культура.

ДОДАТОК А

Код сайту

<!-оголошення типу документа -->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<!-визначення кодування, мови і т.д. -->

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en" xml:lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<!- назва сторінки-->

<title>Тур де Львів - туристичне агенство.</title>

<!--<base href="http://tourdelviv.lviv.ua/">--><base href=".">

<meta name="description" content="Екскурсії по Львову та визначних місцях України. Гарячі тури у Європу, відпочинок на морі. Надійність, якість, безпека, гарні враження і відчуття від кожної поїздки з Тур де Львів">

<!- ключові слова для пошуку в Google-->

<meta name="keywords" content="екскурсії в україні цікаві поїздки туроператори європа світ тури у європу тепле море тематичні екскурсії збірні бізнес-тури тур школярі київ львів болгарія туреччина греція єгипет острова замки львівщини корпоративні відпочинк новий рік святкування свята гіди туристи польща краків варшава дрезден фестивалі оперний театр високий замок гарячі пропозиції знижки мандрівки квести автобусні пейнт-бол венеція відень">

<!- лінки-->

<link href="http://tourdelviv.lviv.ua/image/data/cart1.png" rel="icon">

<link rel="stylesheet" type="text/css" href="./Тур де Львів - туристичне агенство. Экскурсии туры в Европу путешествия горящие путёвки._files/stylesheet.css">

<script type="text/javascript" async="" src="./Тур де Львів - туристичне агенство. Экскурсии туры в Европу путешествия горящие путёвки._files/ga.js"></script><script type="text/javascript" async="" src="./Тур де Львів - туристичне агенство. Экскурсии туры в Европу путешествия горящие путёвки._files/widget.js"></script><script type="text/javascript" async="" src="./Тур де Львів - туристичне агенство. Экскурсии туры в Европу путешествия горящие путёвки._files/widget(1).js"></script><script type="text/javascript" async="" src="./Тур де Львів - туристичне агенство. Экскурсии туры в Европу путешествия горящие путёвки._files/sh.js"></script><script type="text/javascript" src="./Тур де Львів - туристичне агенство. Экскурсии туры в Европу путешествия горящие путёвки._files/jquery-1.7.1.min.js"></script>