Разработка туристического веб-ресурса

Выбор языка программирования, технологии разработки www-сайта. Требование для установки программного продукта. Установка веб сервера: Apache, php, MySQL. Структура базы данных. Расчет затрат на создание веб-ресурса. Обеспечение режимов труда и отдыха.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 01.10.2017
Размер файла 3,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Разработка туристического веб-ресурса

Содержание

1. Аналитическая часть

1.1 Обзор существующих систем

1.2 Основные характеристики проекта

1.3 Выбор языка программирования

1.4 WWW-сайт

1.5 Трехуровневая модель

1.6 Выбор технологии разработки WWW-сайта

1.7 Microsoft SQL Server

2. Проектная часть

2.1 Техническое задание

2.2 Требование для установки программного продукта

2.2.1 Аппаратный носитель

2.2.2 Выбранная ОС

2.3 Установка веб сервера

2.3.1 Установка Apache

2.3.2 Устанавливаем php

2.3.3 Устанавливаем MySQL

2.3.4 Ставим phpmyadmin

2.3.5 Подключение модулей

2.4 Настройка Apache

2.5 Структура базы данных

2.5.1 Структура базы данных

2.5.2 Схема данных - набор таблиц

2.5.3 Создание БД

2.5.4 Создание таблиц в базе данных tour

2.6 Структура приложения

2.7 Логика работы приложения

2.8 Описание логики приложения

3. Технико-экономическая часть

3.1 Расчет затрат на создание веб-ресурса

3.2 Расчет экономической эффективности

4. Безопасность жизнедеятельности

4.1 Опасные и вредные факторы при работе с ПЭВМ

4.2 Мероприятия по безопасности труда и сохранению работоспособности

4.2.1 Создание рационального освещения

4.2.2 Расчет искусственной освещенности помещения

4.3 Защита от шума

4.4 Обеспечение режимов труда и отдыха

4.5 Обеспечение электробезопасности

4.6 Защита от статического электричества

4.7 Обеспечение пожаробезопасности

Список литературы

1. Аналитическая часть

1.1 Обзор существующих систем

Time2Travel.ru

Туристический портал Time2Travel.ru открылся в сентябре 1999 года на базе мегапортала “Кирилл и Мефодий”. За короткий срок он стал одним из самых популярных в туристическом Рунете. Идея портала состоит в обеспечении “полного цикла туристических услуг” в рамках одного интернет-сайта.

Туристы знают Time2Travel.ru как ресурс, где можно подобрать тур из нескольких тысяч вариантов, оставить заявку на “тур своей мечты”, получить подробную информацию о любой стране в “Атласе Мира”.

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

Портал ежедневно обновляется. Свежие статьи загружаются каждый день с 18 часов, а информация в каталогах туров и турфирм редактируется каждый час. В разделе “Пресс-релизы” турфирмы могут бесплатно разместить свои последние новости.

Раздел “Отели” содержит информацию о 951 отеле в 25 странах. Здесь же составляется мини-рейтинг по самым запрашиваемым гостиницам текущего месяца.

В последнее время на Time2Travel.ru в разделе “Интернет для турбизнеса” начала активно работать бесплатная консультация для турфирм по вопросам продажи туров через Интернет. Кроме этого, разработаны специальные услуги для компаний, делающих первые шаги в интернет-бизнесе (в частности, в отношении рекламы туров и продвижения имиджа компании в Сети).

В 2002 г. в фокусе внимания Time2Travel.ru российские регионы. Региональные турфирмы могут разместить бесплатно 10 своих предложе-ний (вдвое больше, чем столичные). Кроме того, вскоре открывается проект, посвященный отдыху в России. Уже с весны все посетители Time2Travel.ru могут получать самую актуальную информацию о новых российских маршрутах.

“100 дорог”

Туристический сервер “100 Дорог” (www.tours.ru) - один из старейших тематических ресурсов Рунета. Действует с 1996 г. Сегодня это один из самых крупных туристических порталов, стабильно занимающий высокие места в Сети в разделе “Путешествия”.

К наиболее посещаемым разделам сервера относятся: база по турам, где размещены предложения более чем 200 фирм из 49 городов России, база данных по туристическим компаниям, страноведческая информация о 50 странах мира, прогноз погоды, а также ежедневно обновляемый раздел о горящих турах и путевках. На сайте можно оформить заявку на бронирование места в 6000 отелей мира (еще около 1000 представлены описаниями), оформить аренду автомобилей в 36 странах, купить билет на более чем 20 тыс. рейсов ведущих российских и иностранных авиакомпаний.

Профессионалы найдут здесь информацию о предстоящих туристических выставках, рекомендации по размещению рекламы в Сети и советы по созданию своего сайта, юридические консультации, вакансии в турфирмах и резюме сотрудников. Недавно на сайте появился раздел “событийный туризм”, где освещаются спортивные события, праздники, карнавалы, проходящие в различных странах мира.

В последнее время провайдер сайта - компания “Аримсофт” занята разработкой специальных рекламных акций для крупных туроператоров и созданием вместе с крупнейшими интернет-магазинами нового раздела “товары в дорогу”. Вскоре завершится разработка системы обмена данными между операторскими и агентскими программами в формате TravelXML, которая ведется совместно с компанией “САМО-Софт”.

TRAVEL.RU

Один из наиболее известных информационных серверов Рунета. Появился в Сети весной 1998 г. Он содержит солидный массив сведений, необходимых путешественнику: описания стран, поиск туров, бронирование гостиниц, билетов и трансферов.

По данным Gallup-media (июнь-июль 2001 г.), еженедельная аудитория сайта составляет около 43 тыс. человек. Примерно 8 тыс. подписчиков получают рассылку новостей Travel.Ru, которая производится 5 раз в неделю.

В разделе “Агентствам” компании могут бесплатно разместить краткую информацию о себе. Размещение туров - на платной основе. Предварительные клиентские заявки с сервера TRAVEL.RU отправляются в агентство по электронной почте.

Агентства-партнеры сервера получают в свое пользование бесплатный почтовый ящик с доменным именем фирма@travel.ru. Здесь же им предоставляется возможность создать собственную интернет-систему бронирования авиабилетов у себя на сайте с помощью продукта “EasyRes”.

Один из самых интересных разделов сайта - “Письма читателей”, где нередко, вместе с рассказами о поездках, можно найти оценку практической деятельности тех или иных турфирм и их партнеров. На сайте регулярно публикуются анонсы статей из российской профессиональной туристической прессы. А количество рассказов о путешествиях измеряется сотнями.

Не так давно сервер Travel.Ru сменил дизайн и коренным образом улучшил навигацию. Появились новые разделы: температура воды на основных курортах мира, информация о шопинге (статьи, советы, новости) и др.

В ближайших планах сервера - создание новой базы данных с железнодорожным расписанием и ценами на билеты. На 2002 г. намечено проведение еженедельных страноведческих конкурсов с интересными призами, рассылки бюллетеней с горящими турами и специальными предложениями.

В преддверии Нового года Travel.Ru и не менее известный сайт “100 дорог” реализовали в Сети совместный проект “Счастливого Нового года!”, который был посвящен тому “Где встретить Новый год?”, “Что подарить?” и “Как провести праздник?”. Сайт открылся 25 ноября и проработал в Сети месяц. За это время на нем побывали почти 50 тыс. пользователей.

"Туристический Маяк"

Сервер "Туристический Маяк" (www.mayakinfo.ru) появился в Сети в феврале 1999 г. Его основной задачей создатели ресурса определили обеспечение пользователей Интернета наиболее полной и актуальной информацией о туристических услугах, а также предоставление эффективного инструмента рекламы для туристических фирм. По статистике Rambler на сайт ежемесячно заходят около 65 тыс. посетителей.

Структурно сайт состоит из четырех основных разделов: “Тур-магазин”, “Тур-атлас”, “Тур-блокнот” и “Тур-бизнес”. В “Тур-магазине” реализуются туры, визы, билеты, “горящие” путевки, принимаются заказы на оформление паспортов. Выбрав гостиницу в справочной базе "Отели Мира", можно зарезервировать место, воспользовавшись системами бронирования HotelClub.net, Horse XXI или GoFlorida.RU, на которые ведут соответствующие ссылки. Здесь же есть функция, позволяющая оставить свой рассказ о посещении того или иного отеля.

В разделе “Тур-бизнес” работают рубрики: “Турагентам”, “Доска объявлений”, “Работа в туризме”, “Турфирмы”, “Добавить фирму”, “Выставки”, “Реклама”, “Обмен кнопками”, “Статистика”.

На сайте постоянно расширяется справочная база отелей, действует “Лента новостей”, производится регулярная рассылка информации для более чем 5 тыс. подписчиков на “горящие путевки”, размещаются объявления от турфирм и резюме специалистов турбизнеса, сообщается о вакансиях. Большой популярностью пользуется рубрика “поиск попутчиков”.

В минувшем году на сайте произведен редизайн и открылись три новых раздела: "Материалы прессы", "Туристические гороскопы" и "Рассказы туристов". В ближайшее время на “Маяке” появятся карты стран, сделанные по специальному заказу в НПО “Картография”. Готовятся материалы для более подробного описания популярных стран - фотогалерея, описания курортов, типовых экскурсионных программ и т.д.

1.2 Основные характеристики проекта

Страницы сайтов -- это файлы с текстом, размеченным на языке HTML. Эти файлы, будучи загруженными посетителем на его компьютер, обрабатываются браузером и выводятся на его средство отображения (монитор, экран КПК, принтер или синтезатор речи).

Проектируемый сайт будет выполнен на языке разметки гипертекста HTML с применением каскадных таблиц стилей CSS, серверного языка программирования PHP и языка программирования JavaScript.

Основное преимущество данного web-ресурса заключается в его мобильности, так как он будет доступен из любой точки планеты, где есть возможность подключиться к сети Internet, при этом конфигурация оборудования и программного обеспечения ни имеет значения.

Проектируемый web-ресурс будет выполнен преимущественно на языках программирования PHP и JavaScript. PHP (англ. PHP: Hypertext Preprocessor -- «PHP: препроцессор гипертекста»; первоначально Personal Home Page Tools -- «Инструменты для создания персональных веб-страниц») -- скриптовый языкпрограммирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов. Основное преимущество PHP-скрипов это то, что они выполняются на стороне сервера и их невозможно увидеть в окне браузера или исходном коде страницы.

1.3 Выбор языка программирования

Бурно развивающийся раздел программирования, ориентированный на разработку динамических Internet-приложений. Языки веб-программирования -- это соответственно языки, которые в основном предназначены для работы с интернет-технологиями. Языки веб-программирования делятся на две группы: клиентские и серверные.

Клиентские языки. Как следует из названия, программы на клиентских языках обрабатываются на стороне пользователя, как правило их выполняет браузер. Это и создает главную проблему клиентских языков -- результат выполнения программы (скрипта) зависит от браузера пользователя. То есть если пользователь запретил выполнять клиентские программы, то они исполняться не будут, как бы ни желал этого программист.

Серверные языки. Когда пользователь дает запрос на какую-либо страницу (переходит на неё по ссылке или вводит адрес в адресной строке своего браузера), то вызванная страница сначала обрабатывается на сервере, то есть выполняются все программы, связанные со страницей, и только потом возвращается к посетителю по сети в виде файла. Этот файл может иметь расширения: HTML, PHP, ASP, Perl, SSI, XML, DHTML, XHTML.

Работа программ уже полностью зависима от сервера, на котором расположен сайт, и от того, какая версия того или иного языка поддерживается. Список серверных языков программирования: PHP, Perl, Python, Ruby, Любой .NET язык программирования (технология ASP.NET), Java, Groovy.

Наиболее популярные языки веб-программирования представлены на рисунке 1.1

Рисунок 1.1. Наиболее популярные языки веб-программирования

PHP (Profeshional Hypertext Preprocessor)

Язык исполняемый на стороне веб-сервера, написанный на языке C++, поэтому содержит много общего. История PHP начинается с человека по имени Rasmus Lerdorf в 1995 году, когда он создаёт простую программу на Perl, которая представляет собой скрипт по подсчёту посещения его резюме. Завоевав большую популярность скрипт требовал своей доработки и тогда появляется первая версия PHP, написанная на С - PHP/FI (Personal Home Page / Forms Interpreter), это как бы модификация Perl для работы с формами. PHP/FI просуществовал до версии 2.0 (выпуск - 1997 г.). После этого на горизонте появились два студента Израильского университета: Andi Gutmans и Zeev Suraski, они начали детально изучать исходники (sources) языка PHP/FI и сочли его непригодным для создания больших проектов. Тогда они создали первую официальную (современную) версию PHP - PHP 3.0, вот он потомок PHP/FI. Тогда и появилось новое название PHP: Hypertext Preprocessor. Шёл 1998 год. Впоследствии появились новые задачи, с которыми 3.0 версия PHP не справлялась (достаточно посмотреть на количество новых функций, которые появились в PHP 4.0, без которых не представляется сегодня возможность эффективно работать с веб-приложениями). Разработчики начали усердно работать над ядром (kernel) PHP и вскоре появляется первая стабильная версия PHP - PHP 4.0 (сенсационная находка для веб-программистов, полностью переделанное ядро).

Perl (Practical Extraction and Report Language)

Язык Perl смело можно считать предком PHP. Действительно, при первом изучении языка в глаза бросается резкое сходство с PHP. Но это только в начале, т.к. разработчиков Perl не особо заботил вопрос об упрощении языка. В начале Perl разрабатывался для ОС семейства *nix. Отцом Perl считается Larry Wall, а разработал он язык, вначале как систему для отчётов в Unix в Usenet-конференциях в 1986 году. Пользователям понравилось, пользователи захотели больше возможностей, которыми Perl в то, время не обладал. Основная задача Perl - облегчение команд для shell, но т.к. мы обсуждаем создание веб-станиц, то мы будем говорить о применение Perl для создания веб-страниц. Вопрос же о том, какой язык выбрать: Perl или PHP настолько философский, как, к примеру, вопрос о возникновении человека на земле. Поэтому это сугубо индивидуально. Мне, например, нравятся оба языка, т.к. они по своему своеобразны, интересны, можно привести множество примеров но это уже выходит за рамки этой статьи.

Казалось бы мы рассмотрели все языки, с помощью которых можно создавать корпоративные и интерактивные веб-приложения, но стоит ещё отметить два интересных языка/систем для создания веб-страниц.

Для реализации системы выбран язык программирования PHP, который фактически стал стандартом для современных Интернет-приложений.

ASP (Active Server Pages)

Технология от Microsoft, позволяющая легко разрабатывать приложения для World Wide Web. ASP работает на платформе операционных систем линии Windows NT и на веб-сервере IIS. ASP не является языком программирования -- это лишь технология предварительной обработки, позволяющая подключать программные модули во время процесса формирования Web-страницы. Относительная популярность ASP основана на простоте используемых языков сценариев (VBScript или JScript) и возможности использования внешних COM-компонент.

Технология ASP получила своё развитие в виде ASP.NET -- новой технологии создания веб-приложений, основанной на платформе Microsoft .NET.

Ruby

Интерпретируемый язык высокого уровня для быстрого и удобного объектно-ориентированного программирования. Язык обладает независимой от операционной системы реализацией многопоточности, строгой динамической типизацией, «сборщиком мусора» и многими другими возможностями. Руби близок по особенностям синтаксиса к языкам Перл и Эйфель, по объектно-ориентированному подходу к Smalltalk. Также некоторые черты языка взяты из Python, Лисп, Dylan и CLU.

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

Ruby on Rails -- объектно-ориентированный программный каркас для создания веб-приложений, написанный на языке программирования Ruby. Ruby on Rails предоставляет каркас модель-представление-контроллер (Model-View-Controller) для веб-приложений, а также обеспечивает их интеграцию с веб-сервером и сервером базы данных.

Ruby on Rails является открытым программным обеспечением и распространяется под лицензией MIT.

Java

Java - объектно-ориентированный язык программирования, разрабатываемый компанией Sun Microsystems с 1991 года и официально выпущенный 23 мая 1995 года. Изначально новый язык программирования назывался Oak (James Gosling) и разрабатывался для бытовой электроники, но впоследствии был переименован в Java и стал использоваться для написания апплетов, приложений и серверного программного обеспечения.

Программы на Java могут быть транслированы в байт-код, выполняемый на виртуальной джава-машине (JVM) -- программе, обрабатывающей байтовый код и передающей инструкции оборудованию, как интерпретатор, но с тем отличием, что байтовый код в отличие от текста обрабатывается значительно быстрее.

Достоинство подобного способа выполнения программ -- в полной независимости байт-кода от ОС и оборудования, что позволяет выполнять Java приложения на любом устройстве, которое поддерживает виртуальную машину. Другой важной особенностью технологии Java является гибкая система безопасности, благодаря тому, что исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером) вызывают немедленное прерывание. Это позволяет пользователям загружать программы, написанные на Java, на их компьютеры (или другие устройства, например, мобильные телефоны) из неизвестных источников, при этом не опасаясь заражения вирусами, пропажи ценной информации, и т. п.

Часто к недостаткам этого подхода относят то, что исполнение байт-кода виртуальной машиной может снижать производительность программ и алгоритмов, реализованных на языке Java. Данное утверждение справедливо для первых версий виртуальной машины Java, однако в последнее время оно практически потеряло актуальность. Этому способствовал ряд усовершенствований: применение технологии JITs (Just-In-Time compiler), позволяющей переводить байт-код в машинный код во время исполнения программы с возможностью сохранения версий класса в машинном коде, широкое использование native-кода в стандартных библиотеках, а также аппаратные средства, обеспечивающие ускоренную обработку байт-кода (например, технология Jazelle, поддерживаемая некоторыми процессорами фирмы ARM).

Внутри Java существуют 3 основных семейства технологий:

J2EE -- Java Enterprise Editon, для создания программного обеспечения уровня предприятия;

J2SE -- Java Standard Editon, для создания пользовательских приложений, в первую очередь -- для настольных систем;

J2ME -- Java Micro Edition, для использования в устройствах, ограниченных по вычислительной мощности, в том числе мобильных телефонах, PDA, встроенных системах

1.4 WWW-сайт

Сайт (от англ. website: web -- «паутина, сеть» и site -- «место», буквально «место, сегмент, часть в сети») -- совокупность электронных документов (файлов) частного лица или организации в компьютерной сети, объединённых под одним адресом (доменным именем или IP-адресом).

Все сайты в совокупности составляют Всемирную паутину, где коммуникация (паутина) объединяет сегменты информации мирового сообщества в единое целое -- базу данных и коммуникации планетарного масштаба. Для прямого доступа клиентов к сайтам на серверах был специально разработан протокол HTTP.

Страницы сайтов -- это файлы с текстом, размеченным на языке HTML. Эти файлы, будучи загруженными посетителем на его компьютер, обрабатываются браузером и выводятся на его средство отображения (монитор, экран КПК, принтер или синтезатор речи). Язык HTML позволяет форматировать текст, различать в нём функциональные элементы, создавать гипертекстовые ссылки (гиперссылки) и вставлять в отображаемую страницу изображения, звукозаписи и другие мультимедийные элементы. Отображение страницы можно изменить добавлением в неё таблицы стилей на языке CSS или сценариев на языке JavaScript.

Страницы сайтов могут быть простым статичным набором файлов или создаваться специальной компьютерной программой на сервере -- так называемым движком сайта. Движок может быть либо сделан на заказ для отдельного сайта, либо быть готовым продуктом, рассчитанным на некоторый класс сайтов. Некоторые из движков могут обеспечить владельцу сайта возможность гибкой настройки структурирования и вывода информации на веб-сайте. Такие движки называются системами управления содержимым (CMS).

1.5 Трехуровневая модель

В компьютерных технологиях трёхуровневая архитектура, синоним трёхзвенная архитектура (англ. three-tier или Multitier architecture) предполагает наличие следующих компонентов приложения: клиентское приложение (обычно говорят «тонкий клиент» или терминал), подключенное к серверу приложений, который в свою очередь подключен к серверу базы данных.

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

Сервер приложений располагается на втором уровне. На втором уровне сосредоточена большая часть бизнес-логики. Вне его остаются фрагменты, экспортируемые на терминалы, а также погруженные в третий уровень хранимые процедуры и триггеры.

Сервер базы данных обеспечивает хранение данных и выносится на третий уровень. Обычно это стандартная реляционная или объектно-ориентированная СУБД. Если третий уровень представляет собой базу данных вместе с хранимыми процедурами, триггерами и схемой, описывающей приложение в терминах реляционной модели, то второй уровень строится как программный интерфейс, связывающий клиентские компоненты с прикладной логикой базы данных.

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

В «правильной» (с точки зрения безопасности, надёжности, масштабирования) конфигурации сервер базы данных находится на выделенном компьютере (или кластере), к которому по сети подключены один или несколько серверов приложений, к которым, в свою очередь, по сети подключаются терминалы.

Достоинства

По сравнению с клиент-серверной или файл-серверной архитектурой можно выделить следующие достоинства трёхуровневой архитектуры:

- масштабируемость

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

- высокая безопасность

- высокая надёжность

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

- низкие требования к производительности и техническим характеристикам терминалов, как следствие снижение их стоимости. Терминалом может выступать не только компьютер, но и, например, мобильный телефон.

Недостатки

Недостатки вытекают из достоинств. По сравнению c клиент-серверной или файл-серверной архитектурой можно выделить следующие недостатки трёхуровневой архитектуры:

- более высокая сложность создания приложений;

- сложнее в разворачивании и администрировании;

- высокие требования к производительности серверов приложений и сервера базы данных, а, значит, и высокая стоимость серверного оборудования;

- высокие требования к скорости канала (сети) между сервером базы данных и серверами приложений.

1.6 Выбор технологии разработки WWW-сайта

Дадим краткое описание технологий Web, используемых для разработки Web-сайтов, в процессе развития.

1. Hypertext Markup Language (HTML)

HTML (от англ. HyperText Markup Language -- «язык разметки гипертекста») -- стандартный язык разметки документов во Всемирной паутине. Большинство веб-страниц создаются при помощи языка HTML (или XHTML). Язык HTML интерпретируется браузерами и отображается в виде документа, в удобной для человека форме.

HTML является приложением («частным случаем») SGML (стандартного обобщённого языка разметки) и соответствует международному стандарту ISO 8879. XHTML же является приложением XML.

HTML -- теговый язык разметки документов. Любой документ на языке HTML представляет собой набор элементов, причём начало и конец каждого элемента обозначается специальными пометками -- тегами. Элементы могут быть пустыми, то есть не содержащими никакого текста и других данных (например, тег перевода строки <br>). В этом случае обычно не указывается закрывающий тег. Кроме того, элементы могут иметь атрибуты, определяющие какие-либо их свойства (например, размер шрифта для элемента font).

2. Common Gateway Interface (CGI)

CGI (от англ. Common Gateway Interface -- «общий интерфейс шлюза») -- стандарт интерфейса, используемого для связи внешней программы с веб-сервером. Программу, которая работает по такому интерфейсу совместно с веб-сервером, принято называть шлюзом, хотя многие предпочитают названия «скрипт» (сценарий) или «CGI-программа».

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

Все скрипты, как правило, помещают в каталог cgi (или cgi-bin) сервера, но это необязательно: скрипт может располагаться где угодно, но при этом большинство веб-серверов требуют специальной настройки. В веб-сервере Apache, например, такая настройка может производиться при помощи общего файла настроек httpd.conf или с помощью файла .htaccess в том каталоге, где содержится этот скрипт.

CGI является одним из наиболее распространённых средств создания динамических веб-страниц.

3. Dynamic HTML (DHTML)

Dynamic HTML или DHTML -- это способ создания интерактивного веб-сайта, использующий сочетание статичного языка разметки HTML, встраиваемого (и выполняемого на стороне клиента) скриптового языка JavaScript, CSS (каскадных таблиц стилей) и DOM (объектной модели документа).

Он может быть использован для создания приложения в веб-браузере: например для более простой навигации или для придания интерактивности форм. DHTML может быть использован для динамического перетаскивания элементов по экрану. Также он может служить как инструмент для создания основанных на браузере видеоигр.

DHTML приложения, которые вполне автономны в браузере, без серверной поддержки, такой как база данных, иногда вынуждены обращаться к Single Page Applications, или SPA

Конкурирующая техника включает в себя Adobe Flash и Silverlight.

4. Active Server Pages (ASP)

ASP представляет собой среду серверных скриптов, которую можно использовать для создания динамических Web-страниц или построения мощных Web-приложений, использующих HTML-страницы в качестве интерфейса. ASP страницы представляют собой файлы с расширением asp, содержащие как текст и HTML теги, так и скрипт-команды. (Таким образом, не исключается возможность использования DHTML). ASP страницы могут использовать ActiveX компоненты для выполнения различных задач, например, для взаимодействия с базой данных.

При запросе ASP-страницы на сервере выполняются содержащиеся в ней серверные скрипты, которые формируют HTML-страницу, отправляемую браузеру в качестве ответа.

ASP приложения просты в реализации и модификации. Программы, основанные на технологии ASP, на порядок производительнее программ, основанных на CGI. Это достигается оптимизацией процессов ASP на сервере, учитывающей архитектуру Windows NT. Для написания серверных скриптов ASP-страниц используются языки JScript и VBScript.

ASP не является языком программирования -- это лишь технология предварительной обработки, позволяющая подключать программные модули во время процесса формирования веб-страницы. Относительная популярность ASP основана на простоте используемых языков сценариев (VBScript или JScript) и возможности использования внешних COM-компонентов.

Технология ASP получила своё развитие в виде ASP.NET -- новой технологии создания веб-приложений, основанной на платформе Microsoft .NET.

5. Java Server Pages (JSP)

JSP (JavaServer Pages) -- технология, позволяющая веб-разработчикам легко создавать содержимое, которое имеет как статические, так и динамические компоненты. По сути, страница JSP является текстовым документом, который содержит текст двух типов: статические исходные данные, которые могут быть оформлены в одном из текстовых форматов HTML, SVG, WML, или XML, и JSP элементы, которые конструируют динамическое содержимое. Кроме этого могут использоваться библиотеки JSP тегов, а также EL (Expression Language), для внедрения Java-кода в статичное содержимое JSP-страниц.

JSP -- одна из высокопроизводительных технологий, так как весь код страницы транслируется в java-код сервлета с помощью компилятора JSP страниц Jasper, и затем компилируется в байт-код виртуальной машины java (JVM). Контейнеры сервлетов, способные исполнять JSP страницы, написаны на языке Java, который может работать на различных платформах. JSP страницы загружаются на сервере и управляются из структуры специального Java server packet, который называется Java EE Web Application, в большинстве своём упакованная в файловые архивы .war и .ear.

Выгода, которую дает технология JSP в сравнении с другими веб-технологиями заключается в том, что JSP является платформонезависимой, переносимой и легко расширяемой технологией для разработки веб-приложений.

Пример JSP страницы с использованием всех составляющих JSP конструкции представлен на рисунке 1.2:

Рисунок 1.2. Пример JSP страницы

1.7 Microsoft SQL Server

В качестве системы управления базами данных (СУБД) использован Microsoft SQL Server 2008.

Microsoft SQL Server 2008- одна из наиболее мощных СУБД архитектуры «клиент-сервер». Эта СУБД позволяет удовлетворять такие требования, предъявляемые к системам распределённой обработки данных, как тиражирование данных, параллельная обработка, поддержка больших баз данных на относительно недорогих аппаратных платформах при сохранении простоты управления и использования.

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

SQL Server 2008 имеет новую масштабируемую архитектуру блокировок, называемую динамической блокировкой (Dynamic Locking), которая комбинирует блокировку на уровне страницы и записи для достижения максимальной производительности и подключения максимального числа пользователей. Microsoft SQL Server 2008 Enterprise Edition разрабатывался с учётом требований к работе в корпоративных средах. В лучших традициях линии продуктов Microsoft SQL Server он обеспечивает высокий уровень масштабируемости и отказоустойчивости. Оптимизированный под Windows NT Enterprise Edition, он спроектирован для построения хранилищ данных и создания Internet/Intranet приложений и отвечает требованиям отказоустойчивости и работы в режиме 24x7 для критичных для бизнеса приложений. Как составная часть семейства Microsoft BackOffice Microsoft SQL Server 2008 Enterprise Edition взаимодействует с другими серверными продуктами BackOffice, что позволяет создавать лучшие клиент-серверные и Web-приложения.

В ноябре 2003 года на конференции PASS в Сиэттле руководители Microsoft рассказали о новых механизмах ETL, реализуемых в Yukon, при помощи которых реализовывался перенос ранее накопленной информации из существующих приложений в хранилища данных. С точки зрения Microsoft эти мехнизмы должны были стать одним из аргументов для привлечения корпоративных пользователей. Архитектура SQL Server ETL, реализуемая в Yukon, получила название Data Transformation Services (DTS). Как отметил Гордон Манжионе, вице-президент Microsoft и глава подразделения SQL Server Team, в DTS планировалось реализовать поддержку параллелизма, благодаря чему пользователи смогут одновременно выполнять несколько сложных задач, как например, трансляция данных, их чтение и перезапись в одном потоке.

Помимо ETL упор делался и на упрощение конфигурирования и управления СУБД, а также улучшение масштабируемости. В частности, представители Microsoft заявляли, что, к примеру, процесс, охватывающий миллионы колонок данных, благодаря увеличению масштабируемости сможет выполняться в течение нескольких секунд, а не минут. Кроме того, в новую версию SQL Server планировалось включить функции, упрощающие создание хранилищ данных и управление ими, а также выполнение операций, связанных с интеллектуальной поддержкой бизнеса. Разработчикам Microsoft обещала новый API, поддерживающий платформу .NET (и язык Visual Basic в частности), избавляя тем самым от необходимости использовать специфический код DTS.

Также во время конференции Манжионе объявил о завершении работ по созданию продукта Best Practices Analyzer для SQL Server 2000, поддерживающий список из 70 правил, составленный совместно разработчиками Microsoft и пользователями SQL Server. Такой список должен был упростить процесс конфигурирования СУБД администраторами баз данных и помочь им избежать самых распространенных ошибок. При этом поддерживались функции резервного копирования и восстановления после сбоев, а также управления СУБД и контроля производительности. Манжионе пообещал, что корпорация будет обновлять этот инструментарий ежеквартально.

Сказанное выше позволяет отнести Microsoft SQL Server 2008 к современным мощным, надёжным и перспективным СУБД архитектуры «клиент-сервер» и использовать его для построения устойчивых Web-приложений.

2. Проектная часть

2.1 Техническое задание

Пользователь взаимодействует с сайтом по следующей схеме.

При открытии главной странице сайта, пользователь видит информацию о сайте, новостной блок и навигационное меню.

Навигационное меню состоит из следующих разделов:

- Главная

- Галерея

- Подбор тура

- Контакты

Раздел «Галерея» содержит в себе различные картинки и фотографии наиболее красивых мест планеты. Раздел представляет собой ряд изображений не большого размера, кликнув по любому из которых, откроется его увеличенное отображение, закрыть которое можно лишь кликнув по нему.

Подбор тура - это сервис позволяющих пользователю подобрать тур, наиболее для него подходящий. Подбор тура представляет собой выбор пользователем таких критериев поиска как: страна вылета; город вылета; страна прибытия; даты вылета и количество ночей; количество взрослых и детей, если есть дети, то необходимо указать дни их рождения; стоимость тура и валюта; город выбранной страны прилета; название отеля; количество звезд в отеле и тип пансиона отеля.

После того как пользователь выбрал нужные ему критерии поиска тура, ему необходимо нажать кнопку «Подобрать тур», после чего откроется окно, содержащее название отеля, город отлета и прилета, название курорта, стоимость тура и наличие свободных мест.

В разделе «Контакты» хранится контактная информация о туристической фирме.

2.2 Требование для установки программного продукта

2.2.1 Аппаратный носитель

В качестве аппаратного носителя был выбран сервер компании НИКС, модель sS6000B/pro2U. Он имеет следующую конфигурацию:

- CaseSuperMicro 2U 6026T-URF4 + (LGA1366, i5520, UIO, SVGA, DVD, SATA RAID, 8xHS SAS/SATA, 4xGbLAN, 18DDRIII 920W HS)

- CPUCPU Intel Xeon E5645 2.40 ГГц/12Мб/5.86 ГТ/с LGA1366

- RAM3 шт. Kingston <KVR1333D3D8R9S/4G> DDR-III DIMM 4Gb <PC3-10600> ECC Registered with Parity CL9

- HDD2 шт. HDD 600 Gb SAS 2.0 Seagate Cheetah 15K.7 <ST3600057SS> 15000rpm 16Mb

- I/O CardAdaptec RAID 6805 ASR-6805 Single PCI-E x8, 8-port SAS/SATA, RAID 0/1/1E/10/5/5EE/6/50/60/JBOD, Cache 512Mb

- ПОPTS-DOS (OEM)

2.2.2 Выбранная ОС

В качестве используемой операционной системы была выбрана Ubuntu 12.04 LTS. Ubuntu -- это разрабатываемая сообществом, основанная на ядре Linux операционная система, которая идеально подходит для использования на персональных компьютерах, ноутбуках и серверах. Она содержит все необходимые программы: программу просмотра Интернет, офисный пакет для работы с текстами, электронными таблицами и презентациями, программы для общения в Интернет и много других.

Преимущества:

§ Ubuntu всегда будет распространяться бесплатно, включая корпоративные версии и обновления безопасности.

§ Для Ubuntu доступна полная коммерческая поддержка от Canonical Ltd. и сотен компаний по всему миру.

§ Ubuntu включает наилучшие переводы и средства доступности для людей с ограниченными возможностями, которые только существуют в виде открытого ПО.

§ Диски c Ubuntu содержат только свободное программное обеспечение; мы поощряем использование свободно распространяемого и открытого ПО, его улучшение и распространение.

2.3 Установка веб сервера

Для работы данного приложения необходимо установить Apache.

2.3.1 Установка Apache

sudo apt-get install apache2 libapache2-mod-auth-mysql

2.3.2 Устанавливаем php

sudo apt-get install php5-common php5 libapache2-mod-php5 php5-cli php5-cgi php5-mysql

Перезапустим apache:

sudo /etc/init.d/apache2 restart

Проверим работоспособность php. Для этого создаем файл /var/www/test.php и поместим в него следующие строки:

<?php

print_r (phpinfo());

?>

Запускаем Firefox и вводим адрес http://localhost/test.php. На экране должна отобразиться служебная информация о php.

2.3.3 Устанавливаем MySQL

sudo apt-get install mysql-server mysql-client

Во время установки будет запрошен ввод пароля root-а MySQL-ного сервера.

2.3.4 Ставим phpmyadmin

phpmyadmin - веб-инструмент для управлениями MySQL-ными базами данных. Очень удобный инструмент для разработчиков.

Установим командой:

sudo apt-get install phpmyadmin

Во время установки от нас запросят об используемом веб-сервере - выбираем "apache2".

Вход в phpmyadmin: http://localhost/phpmyadmin

2.3.5 Подключение модулей

По умолчанию некторые модули отключены. Включить их можно командой:

sudo a2enmod имя_модуля

Например, подключение модуля mod_rewrite:

sudo a2enmod rewrite

После подключения модулей необходимо перезапустить apache:

sudo /etc/init.d/apache2 restart

2.4 Настройка Apache

Для создания виртуального хоста Apache2 под Linux Ubuntu необходимо проделать следующие шаги:

1. В файл /etc/hosts добавить запись о новом хосте, например: 127.0.0.1 test

2. В директории /etc/apache2/sites-available/ создать файл с именем нового хоста, и в него добавить следующие строки:

<VirtualHost APPLICATION.RU:80>

ServerAdmin webmaster@APPLICATION.RU

ServerName APPLICATION.RU

DocumentRoot /var/www/aplication

ErrorLog /var/www/aplication/app.ru.log

CustomLog /var/www/aplication/app.ru.log combined

HostnameLookups Off

UseCanonicalName Off

ServerSignature On

ScriptAlias /cgi-bin/ "/home/407/www/cgi-bin/"

<Directory "/home/407/www/cgi-bin">

AllowOverride None

Options +ExecCGI -Includes

Order allow,deny

Allow from all

</Directory>

<Directory "/var/www/aplication">

Options Indexes FollowSymLinks

Order allow,deny

Allow from all

</Directory>

AddDefaultCharset utf-8

</VirtualHost>

3. Вклюсить виртуальный хост: sudo a2ensite test

4. Перечитать конфигурацию: sudo /etc/init.d/apache2 reload

2.5 Структура базы данных

2.5.1 Структура базы данных

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

База данных будет иметь 6 сущностей:

а) Akcii, в которой будет храниться информация о текущих акциях фирмы.

б) Country, в которой хранится информация о странах отдыха.

в) Exkurcii, в которой содержится информация о всех видах экскурсий во всех странах.

г) Hotels, в которой хранится информация об отелях, сотрудничающих с данной туристической фирмой.

д) News, в которой хранится информация о текущих новостях.

е) Zakazi, в которой содержится информация обо всех заказах клиентов.

Сущность Akcii, будет содержать следующий набор полей:

1. id - является уникальным идентификатором акции в таблице.

2. descr - содержит в себе полную информацию об акции.

3. descr_mini - содержит в себе краткую информацию об акции.

Сущность Сountry, будет содержать следующий набор полей:

1. id - является уникальным идентификатором страны в таблице.

2. Сountry - хранит в себе название страны.

Сущность Exkurcii, будет содержать следующий набор полей:

1. id - является уникальным идентификатором экскурсии в таблице.

2. name - название экскурсии.

3. id_country - идентификатор страны, в которой проводится экскурсия.

4. descr - описание экскурсии.

5. price - цена экскурсии.

Сущность Hotels, будет содержать следующий набор полей:

1. id - является уникальным идентификатором отеля в таблице.

2. id_country - идентификатор страны, в которой расположен отель.

3. name - название отеля.

4. zvezd - количество звезд у отеля.

5. pitanie - система питания отеля.

6. nomera - общее количество номеров.

7. kol_lux - количество люксовых номеров.

8. kol_basic - количество базовых номеров.

9. kol_econom - количество номеров эконом класса.

10. cena_lux - цена люксового номера.

11. cena_basic - цена базового номера.

12. cena_econom - цена номера эконом класса.

13. bassein - наличие у отеля бассейна.

Сущность News, будет содержать следующий набор полей:

1. id - является уникальным идентификатором новости в таблице.

2. descr - содержит в себе полную информацию о новости.

3. descr_mini - содержит в себе краткую информацию о новости.

Сущность Zakazi, будет содержать следующий набор полей:

1. id - является уникальным идентификатором заказа в таблице.

2. id_country - идентификатор страны, в которую отправляется клиент.

3. price - общая цена тура.

4. kol_otdih - количество отдыхающих.

5. kol_day - количество дней и ночей отдыха.

6. fio - фамилия, имя и отчество клиента.

7. contact - контактные данные клиента (телефон, адрес).

pasport - паспортные данные клиента.

2.5.2 Схема данных - набор таблиц

Таблица 2.1. akcii

Имя поля

SQL - тип поля

Особенности

Назначение

id

INT

PRIMARY KEY (первичный ключ)

автоматически увеличивается -- AUTO_INCREMENT

Уникальный код акции.

descr

TEXT

NOT NULL

Полное описание акции.

descr_mini

TEXT

NOT NULL

Краткое описание акции.

Таблица 2.2. country

Имя поля

SQL - тип поля

Особенности

Назначение

id

INT

PRIMARY KEY (первичный ключ)

автоматически увеличивается -- AUTO_INCREMENT

Уникальный код страны.

country

VARCHAR(255)

NOT NULL

Название страны

Таблица 2.3. exkurcii

Имя поля

SQL - тип поля

Особенности

Назначение

id

INT

PRIMARY KEY (первичный ключ)

автоматически увеличивается -- AUTO_INCREMENT

Уникальный код страны.

name

VARCHAR(255)

NOT NULL

Название экскурсии

id_country

INT(10)

NOT NULL

Идентификатор страны

descr

TEXT

NOT NULL

Описание

price

INT(10)

NOT NULL

Цена экскурсии

Таблица 2.4. hotels

Имя поля

SQL - тип поля

Особенности

Назначение

id

INT

PRIMARY KEY (первичный ключ)

автоматически увеличивается -- AUTO_INCREMENT

Уникальный код страны.

id_country

INT(10)

NOT NULL

Идентификатор страны

name

VARCHAR(255)

NOT NULL

Название отеля

zvezd

INT(2)

NOT NULL

Количество звезд отеля

pitanie

VARCHAR(255)

NOT NULL

Система питания отеля

nomera

INT(10)

NOT NULL

Количество номеров

kol_lux

INT(10)

NOT NULL

Количество люксовых номеров

kol_basic

INT(10)

NOT NULL

Количество базовых номер

kol_econom

INT(10)

NOT NULL

Количество номеров эконом класса

cena_lux

INT(10)

NOT NULL

Цена люксового номера

cena_basic

INT(10)

NOT NULL

Цена базового номера

cena_econom

INT(10)

NOT NULL

Цена номера эконом класса

bassein

INT(2)

NOT NULL

Наличие бассейна

Таблица 2.5. news

Имя поля

SQL - тип поля

Особенности

Назначение

id

INT

PRIMARY KEY (первичный ключ)

автоматически увеличивается -- AUTO_INCREMENT

Уникальный код акции.

descr

TEXT

NOT NULL

Полное описание новости.

descr_mini

TEXT

NOT NULL

Краткое описание новости.

Таблица 2.6 - zakazi

Имя поля

SQL - тип поля

Особенности

Назначение

id

INT

PRIMARY KEY (первичный ключ)

автоматически увеличивается -- AUTO_INCREMENT

Уникальный код акции.

id_country

INT(10)

NOT NULL

Идентификатор страны

price

INT(10)

NOT NULL

Цена тура

kol_otdih

INT(10)

NOT NULL

Количество отдыхающих

kol_day

INT(10)

NOT NULL

Количество дней

fio

VARCHAR(255)

NOT NULL

ФИО

contact

VARCHAR(255)

NOT NULL

Контактные данные

pasport

INT(10)

NOT NULL

Серия и номер паспорта

id_hotel

INT(10)

NOT NULL

Идентификатор отеля

2.5.3 Создание БД

Чтобы подключиться к серверу базы данных и работать с БД посредством SQL-команд, надо запустить консольную программу mysql:

mysql -u имя_пользователя -p

В случае, если сервер БД запущен на той же машине, на которой работает пользователь.

Начальный главный пользователь -- root.

Если сервер БД на другой машине, то запуск выполняется следующим образом:

mysql -h имя_или_IP_машины -u имя пользователя -p

После запуска перед пользователем открывается строка команд утилиты mysql. Любая команда и SQL-запрос могут вводиться на нескольких строках подряд, завершать команду надо, вводя точку с запятой.

Создание новой БД выполняется командой:

CREATE DATABASE <имя>;

Чтобы посмотреть произошло ли создание нашей базы данных можно выполнить команду, которая перечисляет все существующие базы данных:

SHOW DATABASES;

2.5.4 Создание таблиц в базе данных tour

База данных будет иметь 6 сущностей:

а) Akcii, в которой будет храниться информация о текущих акциях фирмы.

б) Country, в которой хранится информация о странах отдыха.

в) Exkurcii, в которой содержится информация о всех видах экскурсий во всех странах.

г) Hotels, в которой хранится информация об отелях, сотрудничающих с данной туристической фирмой.

д) News, в которой хранится информация о текущих новостях.

е) Zakazi, в которой содержится информация обо всех заказах клиентов.

Чтобы создать первую таблицу Akcii надо выполнить команду в строке команд:

CREATE TABLE IF NOT EXISTS `akcii` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`descr` text NOT NULL,

`descr_mini` text NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1;

Чтобы создать вторую таблицу country надо выполнить команду в строке команд:

CREATE TABLE IF NOT EXISTS `country` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`country` varchar(255) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1;

Чтобы создать третью таблицу exkurcii надо выполнить команду в строке команд: программирование сайт сервер apache

CREATE TABLE IF NOT EXISTS `exkurcii` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`name` varchar(255) NOT NULL,

`id_country` int(10) NOT NULL,

`descr` text NOT NULL,

`price` int(10) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

Чтобы создать четвертую таблицу hotels надо выполнить команду в строке команд:

CREATE TABLE IF NOT EXISTS `hotels` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`id_country` int(10) NOT NULL,

`name` varchar(255) NOT NULL,

`zvezd` int(2) NOT NULL,

`pitanie` varchar(255) NOT NULL,

`nomera` int(10) NOT NULL,

`kol_lux` int(10) NOT NULL,

`kol_basic` int(10) NOT NULL,

`kol_econom` int(10) NOT NULL,

`cena_lux` int(255) NOT NULL,

`cena_basic` int(255) NOT NULL,

`cena_econom` int(255) NOT NULL,

`bassein` int(2) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

Чтобы создать пятую таблицу news надо выполнить команду в строке команд:

CREATE TABLE IF NOT EXISTS `news` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`descr` text NOT NULL,

`descr_mini` text NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

Чтобы создать шестую таблицу zakazi надо выполнить команду в строке команд:

CREATE TABLE IF NOT EXISTS `zakazi` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`id_country` int(10) NOT NULL,

`price` int(10) NOT NULL,

`kol_otdih` int(10) NOT NULL,

`kol_day` int(10) NOT NULL,

`fio` varchar(255) NOT NULL,

`contact` varchar(255) NOT NULL,

`pasport` int(10) NOT NULL,

`id_hotel` int(10) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

2.6 Структура приложения

Рисунок 2.1. Структура приложения

2.7 Логика работы приложения

Рисунок 2.2. Логика работы приложения

2.8 Описание логики приложения

При открытии браузера набираем в строке localhost/tour/ и попадаем на главную страницу сайта, изображенного на рисунке 2.3

Рисунок 2.3. Главная страница

Раздел «Галерея» содержит в себе различные картинки и фотографии наиболее красивых мест планеты. Раздел представляет собой ряд изображений не большого размера (рисунок 2.4), кликнув по любому из которых, откроется его увеличенное отображение (рисунок 2.5), закрыть которое можно лишь кликнув по нему.

Рисунок 2.4. Миниатюры раздела «Галерея»

Рисунок 2.5. Увеличенное изображение

Подбор тура - это сервис позволяющих пользователю подобрать тур, наиболее для него подходящий. Подбор тура представляет собой выбор пользователем таких критериев поиска как: страна вылета; город вылета; страна прибытия; даты вылета и количество ночей; количество взрослых и детей, если есть дети, то необходимо указать дни их рождения; стоимость тура и валюта; город выбранной страны прилета; название отеля; количество звезд в отеле и тип пансиона отеля (рисунок 2.6):

Рисунок 2.6. Подбор тура

...

Подобные документы

  • Установка и настройка локального web–сервера и его компонентов. Конфигурационные файлы сервера Apache и их натройка. Настройка PHP, MySQL и Sendmail. Проверка работоспособности виртуальных серверов. Создание виртуальных хостов. Тест Server Side Includes.

    учебное пособие [6,2 M], добавлен 27.04.2009

  • История создания WordPress. Выбор домена и хостинга для сайта. Минимальные требования для установки системы. Загрузка Wordpress для самостоятельной установки. Создание базы данных mysql. Установка прав доступа к директориям. Повышение производительности.

    курсовая работа [1,7 M], добавлен 18.12.2013

  • Анализ существующих информационных ресурсов. Выбор программного обеспечения для создания информационного ресурса. Создание электронного ресурса для пансионата "Солнечный". Проверка работоспособности сайта: установленных модулей, ссылок и материалов.

    дипломная работа [11,0 M], добавлен 16.08.2016

  • Инструментальные средства разработки сайта. Таблицы базы данных, их описание. Общие принципы разработки программного продукта. Структура программного продукта клиента. Страница информации о пользователе и его заказов, информационная безопасность.

    дипломная работа [3,5 M], добавлен 14.06.2012

  • Потребность в разработке интернет ресурса для более удобного информирования и обслуживания клиентов фирмы. Проектирование базы данных в MySqlServer для более удобной работы с клиентами ООО "КСС-СЕРВИС". Расчет затрат на разработку программного продукта.

    дипломная работа [3,7 M], добавлен 10.07.2017

  • Отличительные особенности языков программирования PHP и CSS. Возможности компактного многопоточного сервера баз данных MySQL. Системный анализ предметной области, проектирование ее инфологической модели. Создание базы данных и web-страниц сайта магазина.

    курсовая работа [1,0 M], добавлен 15.01.2013

  • Обоснование и выбор методологии проектирования, структурной схемы системы и разработки модели системы. Разработка сетевого плана выполнения работ, расчет технических характеристик. Описание выбора языка программирования, web–сервера и базы данных MySQL.

    дипломная работа [719,0 K], добавлен 20.09.2013

  • Структура локальной сети предприятия и используемое программное обеспечение. Обоснование типа разрабатываемого web-узла. Выбор инструментов и технологий для разработки. Оптимизация контента сайта. Расчёт затрат на создание программного продукта.

    дипломная работа [3,1 M], добавлен 26.01.2013

  • Классификация компьютерных сетей. Схема подключения к Интернету, каналы передачи и приема информации. Разработка сайта с использованием скриптового языка программирования PHP и базы данных MySQL (база данных о квартирах, предназначенных для продажи).

    контрольная работа [3,6 M], добавлен 09.05.2012

  • Структура сайта, характеристика процесса его создания. Необходимая кодировка, установка. Присоединение таблицы стилей к сайту. Окно специальных возможностей тега image. Разбор сайта на РНР блоки, создание базы данных. Доступ к админке по паролю.

    лабораторная работа [889,7 K], добавлен 09.01.2013

  • Разработка сайта для профессионального училища №24. Выбор языка программирования. Характеристика ПУ №24: организационная структура, аппаратное и программное обеспечение. Дизайн сайта; создание базы данных, главного файла и модулей; система управления.

    отчет по практике [1,6 M], добавлен 25.01.2014

  • Обзор технологической платформы для разработки клиентского веб-интерфейса. Выбор платформы базы данных, языка разработки, фреймворка на стороне сервера и клиента. Создание схемы данных MySQL. Работа пользователя и оператора с программным продуктом.

    курсовая работа [4,1 M], добавлен 17.07.2012

  • Выбор программного средства. Алгоритм разработки сайта. Установка системы управления контентом Joomla. Установка компонентов и плагинов. Тестирование программного продукта. Аппаратное и программное обеспечение. Техника безопасности на рабочем месте.

    курсовая работа [4,5 M], добавлен 13.10.2012

  • Назначение и требования к сайту. Структура пользовательской и административной части. Эмулятор Web-сервера Denwer, каскадная таблица стилей CSS. Логическая структура Web-приложения. Расчет трудоемкости разработки программного продукта, калькуляция затрат.

    дипломная работа [2,1 M], добавлен 29.01.2013

  • Разработка Web-сайта с подключенной к нему базой данных для управления пользователями, их авторизацией и регистрацией. Подключение базы данных к сайту. Использование технологии AJAX. Виды SQL инъекций и способы защиты базы данных от попыток взлома.

    дипломная работа [2,9 M], добавлен 13.02.2016

  • Основные технологии для разработки Web приложений. Выявление эффективности функционирования web-сайта и информационных технологий университета. Установка локального сервера Denwer. Пользовательская часть сайта. Эффективность программного обеспечения.

    дипломная работа [4,4 M], добавлен 14.07.2015

  • Функциональные и качественные требования к разработке Интернет-ресурса стоматологической клиники, его роль в деятельности заведения. Разработка базы данных, оригинальных элементов и графического интерфейса. Структура функционирования Интернет-ресурса.

    дипломная работа [852,3 K], добавлен 28.03.2012

  • Выбор средств разработки. Написание сценариев PHP. Разработка базы данных MySQL. Описания организации иерархической многопользовательской модульной структуры сайта с возможностью управления содержанием. Создание средств для удаленного администрирования.

    практическая работа [4,8 M], добавлен 12.06.2013

  • Технологии дистанционного обучения, сравнительный анализ их характеристик, организационно-методические, организационно-технологические модели. Разработка программного продукта, руководство к использованию. Расчет затрат на создание электронного ресурса.

    дипломная работа [2,3 M], добавлен 20.05.2013

  • Порядок сбора данных с помощью программного обеспечения "ПРОЛОГ". Языки программирования VBA и HTML, их характерные особенности. Web-сервера Apache, принцип работы серверной системы. Реализация сбора данных и разработка сайта с показаниями приборов.

    дипломная работа [4,4 M], добавлен 24.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.