Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпорки Галиуллин (upd).doc
Скачиваний:
2
Добавлен:
26.04.2019
Размер:
595.46 Кб
Скачать

15. Язык php. Организация взаимодействия с web-сервером по протоколу http. Понятие socket.

Сокеты как таковые (не только реализованные в PHP) – мощнейший инструмент сетевого программирования. Они позволяют передавать и получать данные на прикладном уровне. Наиболее частое использование сокетов в контексте web-программирования - это работа со страницами, расположенными на разных хостах и взаимодействие с различными типами протоколов, используемых в Интернете (HTTP, FTP, SMTP, IMAP и проч.).

Для работы с веб-сервером напрямую используются сокеты. Поключение к удаленному серверу будет осуществляться с помощью функции fsockopen():

resource fsockopen (string target, int port [, int errno, string errstr [, float timeout]])

target – адрес соединения

port – номер порта

errno, errstr – переменные для размещения кода ошибки и ее описания

timeout – значение тайм-аута, определяющего максимальное время ожидания соединения (в секундах)

При успешном соединении возвращается дескриптор, при ошибке – false.

Пример загрузки страницы.

<?php

function get_content($hostname, $path)

{

$line = "";

// Устанавливаем соединение, имя которого

// передано в параметре $hostname

$fp = fsockopen($hostname, 80, $errno, $errstr, 30);

// Проверяем успешность установки соединения

if (!$fp) echo "$errstr ($errno)<br />\n";

else

{

// Формируем HTTP-запрос для передачи

// его серверу

// страница хотим получить

$headers = "GET $path HTTP/1.1\r\n";

$headers .= "Host: $hostname\r\n";

$headers .= "Connection: Close\r\n\r\n";

// Отправляем HTTP-запрос серверу

fwrite($fp, $headers);

// Получаем ответ

while (!feof($fp))

{

$line .= fgets($fp, 1024);

}

fclose($fp);

}

return $line;

}

$hostname = "piu.ineka.ru";

$path = "/";

// Устанавливаем больше время работы

// скрипта - пока вся страница не будет загружена

// она не будет отображена

set_time_limit(180);

// Вызываем функцию

echo get_content($hostname, $path);

?>

При работе с сокетами необходимо выполнять всю черновую работу по отправке серверу HTTP запросов, получения и обработки ответов. Имя сервера не должно содержать префикс http://

После отправки HTTP запроса из сокета производится чтение ответа с помощью функции fgets(), блоками по 1024 байта, до тех пор, пока не встретится символ конца файла, определяемый функцией feof(). После чего результат возвращается и выводится в окно браузера.

16. Создание приложений, выполняющихся на стороне клиента. Язык JavaScript. Описание базового синтаксиса.

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

В JavaScript:

1) все идентификаторы чувствительны к регистру.

2) в названиях переменных можно использовать буквы, подчёркивание, символ доллара, арабские цифры,

3) названия переменных не могут начинаться с цифры,

4) однострочные комментарии //, многострочные /*… */.

5) Ключевые слова. Ключевые слова не могут использоваться в качестве индетификаторов. Ключевыми словами явл: break, case, continue, default, delete, do, else …

Код скрипта JavaScript размещется непосредственно на HTML -странице.

<html>

<body>

<br>

Это обычный HTML документ.

<br>

<script language="JavaScript">

document.write(" А это JavaScript!")

</script>

<br>

Вновь документ HTML.

</body>

</html>

События и обработчики событий являются очень важной частью для программирования на языке JavaScript . События, главным образом, инициируются теми или иными действиями пользователя. Если он щелкает по некоторой кнопке, происходит событие " Click ". Если указатель мыши пересекает какую-либо ссылку гипертекста - происходит событие MouseOver . Приведенный ниже код представляет простой пример программы обработки события onClick :

<html>

<head>

<script language="JavaScript">

<!-- hide

function calculation() {

var x= 12;

var y= 5;

var result= x + y;

alert(result);

}

// -->

</script>

</head>

<body>

<form>

<input type="button" value="Calculate" onClick="calculation()">

</form>

</body>

</html>

Здесь при нажатии на кнопк у осуществляется вызов функции calculation () . Как можно заметить , эта функция выполняет нек и е вычисления , пользуясь переменны ми x, y и result . Переменную мы можем определить с помощью ключевого слова var . Переменные могут использоваться для хранения различны х величин - чисел, строк текста и т.д. Так строка скрипта var result= x + y; сообщает браузеру о том, что необходимо создать переменную result и поместить туда результат выполнения арифметической операции x + y (т . е . 5 + 12). После этого в переменный result будет размещено число 17. В данном случае команда alert(result) выполняет то же самое, что и alert(17) . Иными словами , мы получаем выпадающее окно , в котором написано число 17.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]