49041

WEB – СЕРВИС

Курсовая

Информатика, кибернетика и программирование

Приходится разбираться с многочисленными параметрами конфигурации pche PHP и MySQL. Денвер это те же самые дистрибутивы pche PHP MySQL. Денвер создавался для того чтобы упростить настройку и установку свободно распространяемых программ pche PHP MySQL и т. Базовый пакет содержит большинство необходимых Webпрограммисту программ и утилит: pche с поддержкой SSI mod_rewrite mod_php.

Русский

2013-12-20

1.21 MB

3 чел.

МИНИСТЕРСТВ ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Томский государственный университет систем управленияи радиоэлектроники

Кафедра радиоэлектроники и защиты информации (РЗИ)

WEB – СЕРВИС

Пояснительная записка к курсовой работе

Студенты гр. 181

____________ Амплеев А.Н.

        ____________ Дронкин К.А.

___________Скворцова Д.А.

________ Шабангалиев Т.Ф.

                          Руководитель

                      Доцент кафедры РЗИ

____________ Смирнов Е.В

2013

Содержание

Введение……………………………………………………………………...3

Выбор программного обеспечения…………………………………………4

Установка локального Web-сервера………………………………………..6

Настройки Web-сервера …………………………………………………...11

Краткое содержание сайта…………………………………………………13

Размещение сайта на сервере……………………………………………...14

Обеспечение доступа к сайту из сети……………………………………..15

Тестирование функционала сайта………………………………………....18

Заключение………………………………………………………………….21

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

Приложение А………………………………………………………………23

Приложение Б………………………………………………………………24

Приложение В…………………………………………………………........25

Приложение Г……………………………………………………………….27

Приложение Д……………………………………………………………….31

Приложение Е……………………………………………………………….38

ВВЕДЕНИЕ

Работающий Web-сервер и СУБД требуются при создании Интернет проектов с использованием современных технологий. Наилучший вариант — это установка локального Web-сервера на тот же ПК, где создается Интернет проект. Этот ПК всегда доступен по IP-адресу 127.0.0.1, что эквивалентно доменному имени localhost. Поэтому для доступа к Web-серверу через браузер можно использовать адрес http://localhost. При использовании локального сервера все изменения в файлах доступны через браузер сразу же. Когда все скрипты будут отлажены, можно зайти в Интернет и скопировать их на сервер хостинг-провайдера. В данной работе будет рассмотрено установка и настройка web-сервера.

ВЫБОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Язык программирования РНР, специально предназначенный для работы в Интернет, изначально создавался под Unix-подобные операционные системы — Linux, FreeBSD, и т.п. Под Windows существует свой аналог РНР, который называется ASP (Active Server Pages). Он полностью ориентирован на Windows и позволяет учитывать и использовать все особенности этой операционной системы. При этом в качестве HTTP-сервера рекомендуют использовать IIS (Internet Information Server) — продукт компании Microsoft.

Желательно, чтобы на сервере и на компьютере, на котором создаются и тестируются РНР - сценарии, стояли одинаковые операционные системы. Бывает так, что РНР -программа отлично работает на Windows-компьютере, но отказывается работать или работает некорректно под Linux. Профессиональное использование РНР ориентировано на Linux (Unix). Существуют детали и возможности, которые нельзя учесть в силу разности ОС Windows и ОС Linux (Unix).

Apache самый распространенный сервер. Он установлен у большинства хостинг-провайдеров. Существует его Windows-версия, практически идентичная по функциональности своему Unix-собрату.

Установка сервера Apache и сопутствующих программ вручную - утомительное занятие. Приходится разбираться с многочисленными параметрами конфигурации Apache, PHP и MySQL.

Существуют готовые комплексы, не нуждающиеся в настройке. Наиболее популярным из таких комплексов является Денвер – это "Джентльменский набор Web-разработчика". Денвер — это те же самые дистрибутивы Apache, PHP, MySQL. Они объединены в единый архив и снабжены удобным инсталлятором и утилитами настройки (включая средства автоматического конфигурирования виртуальных хостов).

Денвер создавался для того, чтобы упростить настройку и установку свободно распространяемых программ (Apache, PHP, MySQL и т. д.). Он имеет модульную структуру. Его ядро — так называемый "базовый пакет". Все остальные компоненты поставляются в виде автономных пакетов расширений, для работы которых нужен базовый пакет.

Базовый пакет содержит большинство необходимых Web-программисту программ и утилит:

● Apache с поддержкой SSI, mod_rewrite, mod_php.

● PHP с поддержкой GD и MySQL.

● MySQL с поддержкой транзакций (mysql-max).

● phpMyAdmin — система управления MySQL через Web-интерфейс; полностью заменяет командную строку MySQL.

● Ядро Perl без стандартных библиотек (они поставляются отдельно).

● Эмулятор sendmail (отладочная "заглушка", помещающая приходящие письма в каталог /tmp); поддерживается работа совместно с РНР и Perl.

● Система управления виртуальными хостами, основанная на шаблонах. Чтобы создать новый хост, вам нужно лишь добавить каталог в /home, править конфигурационные файлы не требуется.

● Система настройки и управления запуском/завершением.

●. Инсталлятор.

Дистрибутив, содержащий все перечисленные выше компоненты, занимает около 9 Мбайт.

УСТАНОВКА ЛОКАЛЬНОГО WEB–СЕРВЕРА

Скачиваем с официального сайта готовую сборку Denwer.

Начинаем установку.

Нажмём клавишу Enter и продолжим установку.

Устанавливаем в стандартную директорию.

Создаем виртуальный диск Z.

Выберем первый вариант. Создадим ярлыки на рабочем столе. На этом установка Denwer завершена.

Для проверки работоспособности Apache, создадим с помощью блокнота, по пути Z:\home\localhost\www  файл index.html в котором напишем текст: Проверка работоспособности.

Запустим браузер. В адресной строке напишем localhost. На экране отобразится фраза: Проверка работоспособности. Это говорит о том, что Apache установлен правильно.

Для проверки поддержки Apache PHP, создадим с помощью блокнота, по пути Z:\home\localhost\www  файл index.php в котором напишем текст: <?php phpinfo(); ?>

Функция phpinfo() отображает детальную информацию об интерпретаторе:

♦ Версию РНР.

♦ Версию операционной системы.

♦ Параметры, заданные при сборке РНР.

♦ Дату сборки интерпретатора.

♦ Сведения о дополнительных модулях.

♦Переменные окружения — основные и локальные настройки интерпретатора.

♦ Заголовки HTTP.

♦ Лицензию РНР.

Запустим браузер. В адресной строке напишем localhost. На экране отобразится информация об установленном PHP. Это говорит о том, что PHP установлен правильно.

На этом проверка сервера завершена.

НАСТРОЙКИ WEB–СЕРВЕРА

Сервер Apache имеет три конфигурационных файла: httpd.conf, srm.conf, access.conf. Обычно эти файлы находятся в каталоге /etc/httpd/conf. Вся настройка сервера заключается в редактировании этих трех файлов.

Рассмотрим, какие функции выполняют эти файлы:

● Файл httpd.conf — это основной файл конфигурации сервера. В нем содержится техническое описание работы сервера.

● В файле srm.conf задаются параметры документов, которые размещены на сервере.

● Файл access.conf содержит параметры доступа к серверу.

Начиная с версии 1.3, все директивы, которые раньше находились в файлах srm.conf и access.conf, помещены в файл httpd.conf.

Далее рассмотрим конфигурационный файл httpd.conf и его директивы.

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

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

1. Общие. К общим директивам относятся глобальные директивы, влияющие на работу всего Web-сервера. Это директивы ServerName, ServerType, Port, User и Group, ServerAdmin, ServerRoot, PidFile, DocumentRoot, UserDir.

2. Директивы протоколирования: Error Log, TransferLog, HostnameLookups.

3. Директивы ограничения доступа: AllowOverride, Options, Limit.

4. Директивы управления производительностью: StartServers, MaxSpareServers, MinSpareServers, а также Директива CacheNegotiatedDocs.

5. Директивы обеспечения постоянного соединения с клиентом: Timeout, KeepAlive, KeepAliveTimeout.

6. Директивы настройки отображения каталогов. Оформить отображение каталогов можно с помощью директив настройки отображения каталогов: Directorylndex, Fancylndexing и AddlconByType.

7. Директивы обработки ошибок. Директивой обработки ошибок HTTP-сервера является директива ErrorDocument. С ее помощью можно установить реакцию на любую ошибку сервера, например, на ошибку 404 (документ не найден).

8. Директивы перенаправления: Redirect, Alias и ScriptAlias.

9. Директивы для работы с многоязычными документами: AddLanguage и LanguagePriority.

10. Директивы обработки MIME-типов. Настроить свой сервер для обработки различных MIME-типов можно с помощью директив DefaultType, AddEncoding, AddType, AddHandler и Action.

11. Директивы создания виртуальных узлов: VirtualHost, Listen, BindAddress.

КРАТКОЕ ОПИСАНИЕ САЙТА

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

Архитектура:

  1.  actions — действия, отображающие необходимую информацию в соответствии с запросом получая ее из моделей. Возвращают JSON данные.
  2.  front — все, что относится к отображению сайта в браузере.
  3.  lib — библиотеки. В данной работе мы использовали библиотеку для парсинга сайтов с открытым исходным кодом phpQuery.
  4.  models — модели. Используются для извлечения данных и дальнейшей передачи их в действия. Currency.php — класс для получения курса валют. Schedule.php — класс для получения расписания авиа перелетов г. Томска.

Содержание файлов доступно в приложениях.

РАЗМЕЩЕНИЕ САЙТА НА СЕРВЕРЕ

По адресу Z:\home\localhost\www разместим файлы  сайта.

Для проверки в адресной строке наберём localhost.

Этим мы проверили работоспособность сайта.

ОБЕСПЕЧЕНИЕ ДОСТУПА К САЙТУ ИЗ СЕТИ

Проекты, заведенные в Денвере, по умолчанию не доступны из локальной сети. Это достигается благодаря тому, что все виртуальные хосты имеют IP-адрес 127.0.0.1, всегда обозначающий "текущая локальная машина".Тем не менее, все же существует возможность открыть доступ к проектам.

Определим IP-адрес компьютера. Для этого воспользуемся командой ipconfig в командной строке.

 

По пути Z:\home\localhost создадим папку и назовём её полученным IP-адресом и скопируем в неё содержимое папки находящейся по пути Z:\home\localhost\www.

Откроем браузер, в адресной строке введём  IP-адрес компьютера.

Теперь сайт доступен из сети.

Просмотрим сайт с другого компьютера. Для этого в адресной строке введём IP-адрес компьютера на котором располагается сайт.

Произвели проверку доступности сайта из сети.

ТЕСТИРОВАНИЕ ФУНКЦИОНАЛА САЙТА

Для тестирования функционала сайта, откроем браузер, введём IP-адрес компьютера, на котором расположен сервер с сайтом.

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

Нажмём подтвердить.

На экране отобразится текущий курс валют.

Работоспособность первой части проверена.

Для проверки работоспособности второй части осуществим выбор пункта назначения. Для примера выберем Москва аэропорт Внуково.

Нажмём кнопку подтвердить. На экране отобразится расписание паллетов по выбранному маршруту, в том числе: авиакомпания, тип воздушного судна, номер рейса, время отправления, время прибытия, частота движения.

Работоспособность второй части проверена.

ЗАКЛЮЧЕНИЕ

В данной работе была поэтапно описана установка и настройка web-сервера. На сервер был помещён сайт.

СПИСОК ЛИТЕРАТУРЫ

1. http://phpmaster.ru/

2. http://habrahabr.ru/

3.http://php.net/

4. Скляр Д., Трахтенберг А. PHP. Сборник рецептов. – Пер. с англ. – СПб: Символ – Плюс, 2005.

5. Котеров Д., Костарев А. PHP5 в подлиннике. – СПб: Символ – Плюс, 2005. 6. Дюбуа П. MySQL. Сборник рецептов. – Пер. с англ. - СПб: Символ – Плюс, 2004.

ПРИЛОЖЕНИЕ А

Содержание файла get_currency_rate

<?php

error_reporting(E_ALL);

ini_set('display_errors', '1');

if ($_POST) {

   $request = $_POST;

   require_once('../models/Currency.php');

   $model = new Currency();

   $data = array();

   

   try {

       $course = $model->getRate($request['from'], $request['to']);

       $data['date'] = $course[0];

       $data['course'] = $course[1];

       $data['changes'] = $course[2];

   } catch (Currency_Exception $e) {

       $data['error'] = $e->getMessage();

   } catch (Exception $e) {

       $data['error'] = $e->getMessage();

   }

   

   echo json_encode($data);

   exit;

}

ПРИЛОЖЕНИЕ Б

Содержание файла get_schedule

<?php

error_reporting(E_ALL);

ini_set('display_errors', '1');

if ($_POST) {

   $request = $_POST;

   require_once('../models/Schedule.php');

   $model = new Schedule();

   $data = array();

   

   try {

       $schedule = $model->getSchedule($request['index']);

       $data['result'] = $schedule;

   } catch (Schedule_Exception $e) {

       $data['error'] = $e->getMessage();

   } catch (Exception $e) {

       $data['error'] = $e->getMessage();

   }

   

   echo json_encode($data);

   exit;

}

ПРИЛОЖЕНИЕ В

Содержание файла Currency

<?php

class Currency_Exception extends Exception {}

class Currency

{

   protected $_hrefs = array(

       '1-2' => 'http://bankir.ru/kurs/dollar-ssha-k-rossijskij-rubl',

       '2-1' => 'http://bankir.ru/kurs/rossijskij-rubl-k-dollar-ssha'

   );

   

   protected $_errors = array(

       'incorrect' => 'НекоррекСРЅСРРІРІРѕРґ. КонверСР°СРёСЏ РЅРµРІРѕР·РјРѕРРЅР°.',

       'not_found' => 'КонверСР°СРёСЏ РЅРµРІРѕР·РјРѕРРЅР°',

       'not_available' => 'Сервис РЅРµРґРѕСЃСупен'

   );

   

   public function __construct()

   {

       require_once('../lib/phpQuery/phpQuery.php');

   }

   

   public function getRate(/* Int */ $from, /* Int */ $to)

   {

       $from = intval($from);

       $to = intval($to);

       

       if (0 !== $from && 0 !== $to && $from !== $to) {

           if (isset($this->_hrefs[(string) $from . '-' . (string) $to])) {

               $href = $this->_hrefs[(string) $from . '-' . (string) $to];

               

               try {

                   $result = array();

                   $html =@ file_get_contents($href);

                   

                   if (!$html) {

                       throw new Currency_Exception($this->_errors['not_available']);

                   }

                   

                   $document = phpQuery::newDocument($html);

                   $coursesTable = pq($document->find('table.kurs_table_small'));

                   $course = pq($coursesTable->find('tr.bold'));

                   $course->find('img')->remove();

                   $values = $course->find('td');

                   

                   foreach($values as $value) {

                       $result[] = trim(pq($value)->html());

                   }

                   return $result;

               } catch (Exception $e) {

                   throw new Currency_Exception($this->_errors['not_available']);

               }

           } else {

               throw new Currency_Exception($this->_errors['not_found']);

           }

       } else {

           throw new Currency_Exception($this->_errors['incorrect']); } }

}

ПРИЛОЖЕНИЕ Г

Содержание файла Shedule

<?php

class Schedule_Exception extends Exception {}

class Schedule

{

   protected $_href = 'http://tomskairport.ru/topassengers/flights/';

   

   protected $_errors = array(

       'error' => 'НевозмоРРЅРѕ РїРѕР»СѓСРёССЊ СЂР°СЃРїРёСЃР°РЅРёРµ',

       'empty' => 'РџСѓРЅРєСназнаСения РЅРµ РІСбран',

       'not_available' => 'Сервис РЅРµРґРѕСЃСупен'

   );

   

   protected $_destinations = array(

       0 => 'РќРµ РІСбрано',

       1 => 'РњРѕСЃРєРІР° (РРЅСѓРєРѕРІРѕ)',

       2 => 'РњРѕСЃРєРІР° (Ромодедово)',

       3 => 'РњРѕСЃРєРІР° (ШеремеСьево)',

       4 => 'Санкт-РџРµСербург (Пулково)',

       5 => 'РЎРѕСРё (Адлер)',

       6 => 'Анапа (Анапа)',

       7 => 'Красноярск (Рмельяново)',

       8 => 'РЎСѓСЂРіСѓС‚ (РЎСѓСЂРіСѓС‚)',

       9 => 'Рарнаул (Рарнаул)',

       10 => 'РќРёРневарСРѕРІСЃРє (РќРёРневарСРѕРІСЃРє)',

       11 => 'РЎССЂРµРевой (РЎССЂРµРевой)',

       12 => 'РќРѕРІРѕСЃРёР±РёСЂСЃРє (ТолмаСево)',

       13 => 'РРѕСЂРЅРѕ-РђР»СР°РСЃРє (РРѕСЂРЅРѕ-РђР»СР°РСЃРє)'

   );

   

   public function getDestanations()

   {

       return $this->_destinations;

   }

   

   public function getSchedule(/* Int */ $destinationIndex)

   {

       require_once('../lib/phpQuery/phpQuery.php');

       $destinationIndex = intval($destinationIndex);

       

       if (0 !== $destinationIndex) {

           if (isset($this->_destinations[$destinationIndex])) {

               $destination = $this->_destinations[$destinationIndex];

               

               try {

                   $result = array();

                   $i = 0;

                   $html = @file_get_contents($this->_href);

                   

                   if (!$html) {

                       throw new Schedule_Exception($this->_errors['not_available']);

                   }

                   

                   $document = phpQuery::newDocument($html);

                   $table = pq($document->find('table.info_online'));

                   $trs = $table->find('tr');

                   

                   foreach($trs as $el) {

                       $flight = pq($el);

                       if ($this->_wtoutf(trim($flight->find('td:eq(3)')->html())) == $destination) {

                           $j = 0;

                           $tds = $flight->find('td');

                           foreach ($tds as $el) {

                               $result[$i][$j] = $this->_wtoutf(trim(pq($el)->html()));

                               $j++;

                           }

                           unset($result[$i][3]);

                           unset($result[$i][7]);

                           unset($result[$i][9]);

                           $i++;

                       }

                   }

                   return $result;

               } catch (Exception $e) {

                   throw new Schedule_Exception($this->_errors['not_available']);

               }

           } else {

               throw new Schedule_Exception($this->_errors['error']);

           }

       } else {

           throw new Schedule_Exception($this->_errors['empty']);

       }

   }

   

   /**

    * Encoding from windows-1251 to UTF-8

    *

    * @param String $content

    * @return String

    */

   protected function _wtoutf(/* String */ $content)

   {

       return iconv('windows-1251', 'utf-8', $content);

   }

}

ПРИЛОЖЕНИЕ Д

Содержание файла view

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

<html>

 <head>

   <title>РљСѓСЂСЃРѕРІРѕРпроект</title>

   <meta name="viewport" content="width=device-width, initial-scale=1">

   <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">

   <link rel="stylesheet" href="front/bootstrap.css">

   <link rel="stylesheet" href="front/bootstrap-responsive.css">

   <script src="front/jquery.min.js"></script>

   <script src="front/bootstrap.min.js"></script>

   <script type="text/javascript">

       var currency = {

           get: function() {

               var from = $('#from').val(),

                       to = $('#to').val(),

                       result = $('#result0'),

                       error = $('#error0'),

                       loader = $('#loader0');

                   

                  result.hide();

                  error.hide();

                  loader.show();

                  $.ajax({

                       type: 'POST',

                       url: 'actions/get_currency_rate.php',

                       dataType:'json',

                       data: {from: from, to: to},

                       success: function(data) {

                           loader.hide();

                           if (!data.error) {

                               result.find('#date0').html(data.date);

                               result.find('#course0').html(data.course);

                               result.find('#changes0').html(data.changes);

                               result.show();

                           } else {

                               error.show().html(data.error);

                           }

                       }                            

                   });   

               }

           }

           var schedule = {

               get: function() {

                   var index = $('#destination').val(),

                           result = $('#result1'),

                           error = $('#error1'),

                           loader = $('#loader1'),

                           outputFrom = '',

                           outputTo = '';

                      result.find('tbody').empty();

                      result.hide();

                      error.hide();

                      loader.show();

                      $.ajax({

                           type: 'POST',

                           url: 'actions/get_schedule.php',

                           dataType:'json',

                           data: {index: index},

                           success: function(data) {

                               loader.hide();

                               if (!data.error) {

                                   outputFrom += '<tbody>';

                                   outputTo += '<tbody>';

                                   for (var row in data.result) {

                                       var i = 0;

                                       outputFrom += '<tr>';

                                       outputTo += '<tr>';

                                       for(var flight in data.result[row]) {

                                           var value = data.result[row][flight];

                                           if (i == 0 || i == 1) {

                                               outputFrom += '<td>' + value + '</td>';

                                               outputTo += '<td>' + value + '</td>';

                                           }

                                           if (i <= 5 && i != 0 && i != 1) {

                                               outputFrom += '<td>' + value + '</td>';

                                           } else if(i > 5) {

                                               outputTo += '<td>' + value + '</td>';

                                           }

                                           i++;

                                       }

                                       outputFrom += '</tr>';

                                       outputTo += '</tr>';

                                   }

                                   outputFrom += '</tbody>';

                                   outputTo += '</tbody>';

                                   $('#from1').append(outputFrom);

                                   $('#to1').append(outputTo);

                                   result.show();

                               } else {

                                   error.show().html(data.error);

                               }

                           }                            

                       });   

                   }

               }

   </script>

   <style>

       #error0, #error1 {

           margin-top: 20px;

       }

       #result0, #result1 {

           margin-top: 20px;

       }

       #result0 div {

           display: inline-block;

           margin-left: 20px;

       }

       #result0 div span {

           font-size: 17px;

       }

       #result0 div p {

           font-weight: bold;

           font-size: 25px;

           margin-top: 5px;

       }

   </style>

 </head>

 <body>

   <div class="row">

     <div class="span5" style="margin-left: 50px">

       <h3>КонверСРѕСЂ РІР°Р»СЋС‚</h3>

       <div class="well">

         <h6>Из какоРвалюСС‹</h6>

         <select id="from">

         <?php foreach(array_keys($currencies) as $currencyKey): ?>

             <option value="<?php echo $currencyKey; ?>"><?php echo $currencies[$currencyKey]; ?></option>

         <?php endforeach; ?>

         </select>

         <h6>Ркакую</h6>

         <select id="to">

         <?php foreach(array_keys($currencies) as $currencyKey): ?>

             <option value="<?php echo $currencyKey; ?>"><?php echo $currencies[$currencyKey]; ?></option>

         <?php endforeach; ?>

         </select>

         <br/>

         <br/>

         <a class="btn" onclick="currency.get();">РџРѕРґСвердиССЊ</a>

         <div class="alert alert-error" id="error0"style="display: none;"></div>

         <img src ="front/loader.gif" id="loader0"height="50px" width="50px" style="display: none;"/>

         <div id="result0" style="display: none">

             <div><span>Число: </span><p id="date0"></p></div>

             <div><span>РљСѓСЂСЃ: </span><p id="course0"></p></div>

             <div><span>Изменения: </span><p id="changes0"></p></div>

         </div>

       </div>

     </div>

     <div class="span7">

       <h3>Расписание авиаперелеСРѕРІ РіРѕСЂРѕРґР° РўРѕРјСЃРєР°</h3>

       <div class="well">

         <h6>РџСѓРЅРєСназнаСения</h6>

         <select id="destination">

         <?php foreach(array_keys($destinations) as $destinationKey): ?>

               <option value="<?php echo $destinationKey; ?>"><?php echo $destinations[$destinationKey]; ?></option>

         <?php endforeach; ?>

         </select>

         <br>

         <a class="btn" onclick="schedule.get()">РџРѕРґСвердиССЊ</a>

         <div class="alert alert-error" id="error1"style="display: none"></div>

         <img src ="front/loader.gif" id="loader1"height="50px" width="50px" style="display: none;"/>

         <div id="result1" style="display: none">

             <h4>Из РўРѕРјСЃРєР°</h4>

             <table class="table table-bordered table-striped" id="from1">

                 <thead>

                     <tr>

                         <td>Авиакомпания</td>

                         <td>РўРёРї РРЎ</td>

                         <td>Номер СЂРµРСЃР°</td>

                         <td>Рремя РѕСправления</td>

                         <td>Рремя РїСЂРёР±ССРёСЏ</td>

                         <td>ЧасСРѕСР° РґРІРёРения</td>

                     </tr>

                 </thead>

             </table>

             <h4>РРўРѕРјСЃРє</h4>

             <table class="table table-bordered table-striped" id="to1">

                 <thead>

                     <tr>

                         <td>Авиакомпания</td>

                         <td>РўРёРї РРЎ</td>

                         <td>Номер СЂРµРСЃР°</td>

                         <td>Рремя РѕСправления</td>

                         <td>Рремя РїСЂРёР±ССРёСЏ</td>

                         <td>ЧасСРѕСР° РґРІРёРения</td>

                     </tr>

                 </thead>

             </table>

         </div>

       </div>

     </div>

   </div>

   <hr>

 </body>

</html>

ПРИЛОЖЕНИЕ Е

Содержание файла index.php

<?php

error_reporting(E_ALL);

ini_set('display_errors', '1');

$currencies = array('0' => 'РќРµ РІСбрано', '1' => 'Роллар', '2' => 'Рубль');

require_once('models/Schedule.php');

$schedule = new Schedule();

$destinations = $schedule->getDestanations();

require_once('view.phtml');

?>


 

А также другие работы, которые могут Вас заинтересовать

29247. Феномены русской, российской, советской культуры 52.5 KB
  Проблема самосознания русской культуры. Этапы становления русской идеи. Формирование русской национальной культуры на протяжении веков проходило в русле этнического разнообразия преодоления разобщенности в условиях интенсивного воздействия извне: соединение Запада и Востока наслоение различных этнических и региональных культурных типов временных компонентов конфессиональных общностей.
29248. Понятие культурной самоидентичности 32 KB
  Современные глобальные проблемы есть следствие логическое продолжение глубокой структурной несогласованности человеческой субъективности кризиса его самоидентичности. Распад социальной системы начинается с распада социальных связей и разрушения социальных субъектов кризиса их личностных ценностных ориентации и утраты самоидентичности. Проблема самоидентичности является стержнем ядром всей социальной проблематики.
29249. Символ. Смысловая структура символа 53.5 KB
  Языком культуры в широком смысле этого понятия называются те средства знаки символы тексты которые позволяют людям вступать в коммуникативные связи друг с другом ориентироваться в пространстве культуры. Язык культуры это универсальная форма осмысления реальности в которую организуются все вновь возникающие или уже существующие представления восприятия понятия образы и другие подобного рода смысловые конструкции носители смысла. Основной структурной единицей языка культуры с точки зрения семиотики являются знаковые системы.Любой...
29250. Культура как смысловое поле человеческой жизнедеятельности и способ реализации творческих возможностей человека 60.5 KB
  Речь не о какомто единственном и едином способе деятельности а о целом их ансамбле таком же сложном как и система созидательных способов деятельности деятельность распредмечивания изоморфносимметрична деятельности опредмечивания. Но и зеркально симметричным и возвращает нас к исходному пункту деятельности человеку. Какими качествами он должен обладать чтобы выполнить эту функцию Человек субъект деятельности.
29251. КУЛЬТУРА ЗАПАДНОЕВРОПЕЙСКОГО СРЕДНЕВЕКОВЬЯ 53.5 KB
  В этом исторически длительном социокультурном процессе развития феодального общества вырабатывался своеобразный тип отношений человека к миру качественно отличающий его как от культуры античного общества так и от последующей культуры Нового времени эпохи буржуазного производства. Именно христианство стало основной осью складывающегося с V века в Западной Европе мира которая влияла на все стороны жизни человека его духовные приоритеты устои общества. Следование этому образцу становилось смыслом жизни каждого человека так как...
29252. Строение культуры 38 KB
  Кагану Человек общество культура являются системными объектами. Культура понимается как система высшего уровня сложности. Изоморфность филогенеза и онтогенеза свидетельствуют о том что культура есть целостновсесторонний способ очеловечивания человека и человеческого рода и отдельного его представителя в процессе обретения им таких качеств которые природе неизвестны и порождаются преобразованием биологической формы бытия в социокультурную. Таким образом первичная форма существования культуры физическая культура.
29253. Мейнстрим, субкультура и контркультура 34 KB
  Малые культурные миры называют субкультурами. Субкультура это подкультура или культура в культуре. а субкультура отличается лишь однойдвумя чертами.
29254. СУБЪЕКТ и ОБЪЕКТ КУЛЬТУРЫ 27 KB
  Субъект культуры в культурологическом понимании какаялибо социальная общность или конкретный индивид реализующий в практической деятельности культуросозидающее начало потребление и духовное освоение объектов культуры воспроизводство себя как человека определенной исторической эпохи. В культурологическом понимании объект культуры элемент фрагмент бытия культуры являющийся сферой реализации активности и историческим результатом практической деятельности субъекта культуры.
29255. ипология культуры (типы культур) 36 KB
  Типология культур строится на основании нескольких критериев: связь с религией культуры религиозные и светские; региональная принадлежность культуры культуры Востока и Запада средиземноморская латиноамериканская; региональноэтническая особенность русская французская; принадлежность к историческому типу общества культура традиционного индустриального постиндустриального общества; хозяйственный уклад культура охотников и собирателей огородников земледельцев скотоводов индустриальная культура; сфера общества или вид...