Некоммерческое акционерное общество

АЛМАТИНСКИЙ УНИВЕРСИТЕТ ЭНЕРГЕТИКИ  И СВЯЗИ

Кафедра «Электроника» 

 

 

СОВРЕМЕННЫЕ ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

Методические указания к выполнению лабораторных работ

для студентов всех форм обучения специальности

5В071900 – Радиотехника, электроника и телекоммуникации

  

 

Алматы 2012

СОСТАВИТЕЛИ: Оразалиева С.К., Нұрланұлы А. Современные информационные технологии. Методические указания к выполнению лабораторных работ  для студентов всех форм обучения специальности 5В071900 – Радиотехника, электроника и телекоммуникации. – Алматы: АУЭС, 2012. – 20 стр.

 

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

 Методическая разработка составлена в целях закрепления лекционного материала и предназначена для всех форм обучения специальности 5В071900 – Радиотехника, электроника и телекоммуникации.  

Ил. 2, табл.3 , библиогр. – 6 назв.

  

Рецензент:   д-р техн. наук, проф. Ш.А. Бахтаев                 

 

Печатается по плану издания Некоммерческого акционерного общества «Алматинский университет энергетики и связи» на 2011 г.

 

 © НАО «Алматинский университет энергетики и связи», 2012 г.

 

Св.план 2011 г., поз. 215   

  

         Лабораторная работа № 1. Базовые элементы  PHP

 

         1 Задание

 

         1.1 Изучить следующие базовые элементы языка:

-       Типы данных, идентификаторы, комментарии, объявление переменных.

-       Управляющие конструкции языка.

-       Функции форматированного/неформатированного вывода данных.

         1.2 Динамически сгенерировать таблицу данных 50 строк на 15 столбцов с помощью генератора случайных чисел. Подсчитать статистические данные по строкам и столбцам – среднее значение, максимальное значение и сумма. Результат показать в браузере. Примерный вид таблицы:

 

1

2

15

среднее

максимальное

сумма

1

12

29

45

34

67

345

2

43

23

24

54

89

254

50

12

87

27

23

95

259

среднее

34

56

45

 

 

 

максимальное

98

89

87

 

 

 

сумма

345

674

345

 

 

 

 

         1.3 Сгенерировать строку из 100 символов с различным типом форматирования. Символы и форматирование получаются случайным образом. Для форматирования применяются тэги <b></b>, <u></u>, <i></i> и их комбинации. Результат показать в браузере. Примерный вид строки:

djklsgjklfmbdgcjdfgkqwxfdgzdfaglj

 

         2 Теоретическая часть

 

Примеры объявления переменных:

$a = 1;                  - целочисленный тип

$b = 2.45;             - вещественный тип

$c = “string”;        - строковый тип

Комментарии:

// однострочный комментарий

# это тоже однострочный комментарий

/* многострочный

комментарий */

 

Основные команды и примеры:

 

if (<условие>) <команда> [ else <команда>]

if (<условие>) <команда> elseif (<условие>) <команда>

if (x > y) printx>y”;

         elseif (x<y) print “x<y”;

         else printx=y”;

for(<инициализация>;<условие>;<приращение>) <команда>

for ($i=0; $i < 10; $i++) $fact = $fact * $i;

continue;     - продолжить цикл, пропустив нижележащие команды

break;          - прекратить цикл

mt_rand (<минимум>, <максимум>); - сгенерировать случайное число

         $num = mt_rand(10,50);

 

Основные функции вывода:

 

print <аргумент>; - вывести аргумент

Пример:     printHello World!”;

 

echo <аргумент>; - вывести группу аргументов

Пример:     echo “Hello World!”, “Hello Earth!”, “Hello Sky!”;

 

printf (<формат>[, <аргументы>,…] ); - С-подобная функция

Пример:     printf (“my course is %d%s\n”, 4, “<br>”);

 

         Пример PHP-скрипта:

 

<html>

<body>

<?php

         print "Hello Programmer!<br>";

         for ($i = 0; $i < 10; $i++ )

                   printf (“Serial number is %d<br>“, $i);

                            printf ("Random number is %d<br>", mt_rand(0,100));

?>

</body>

</html>

 

3 Контрольные вопросы

 

1 Типы данных, идентификаторы, комментарии, объявление переменных языка PHP

2 Управляющие конструкции языка.

3 Функции форматированного/неформатированного вывода данных.

 

 

Лабораторная работа № 2. Обмен информацией между WEB-сервером и клиентом

 

         1 Задание

 

         Изучить следующие приемы:

Изучить конструкции HTML для организации обмена между сервером и клиентом.

Разобраться с методами передачи данных GET и POST.

Изучить возможности PHP для получения информации от пользователя.

 

2 Теоретическая часть

 

Примеры создания полей ввода и кнопок можно посмотреть в лекции или спецификации языка HTML. Используемые тэги:

<FORM> - создание формы;

<INPUT> -создание полей редактирования, кнопок различных видов;

<SELECT> - создание списка выбора и комбинированного списка.

 

3 Практическая часть

 

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

     Разработать HTML-файл для возможности получения от пользователя следующих данных:

         - ФИО – поля редактирования;

         - пол (мужской, женский) – радио-кнопки;

         - семейное положение (холост, женат/замужем) – радио-кнопки;

         - образование (среднее, высшее и т.п.) – комбинированный список;

         - хобби (спорт, охота, рыбалка, компьютеры, пиво, ТВ и т.п.) – список с множественным выбором;

         - есть ли компьютер – кнопка-переключатель.

         Разработать PHP-скрипт, анализирующий введенные данные и генерирующий страничку вида:

          Иванов Иван Иванович

         Пол: мужской

         Семейное положение: холост

         Образование: высшее

         Хобби: охота, рыбалка

         Наличие ПК дома: есть

         Использовать поочередно в п.1 методы GET и POST. Посмотреть в чем различия. Разобрать формат передачи параметров в методе GET.

  

4 Контрольные вопросы

 

1 Обмен  между сервером и клиентом.

2 Методы передачи данных GET и POST.

3 Возможности PHP для получения информации от пользователя.

  

         Лабораторная работа № 3. Разработка диалоговых систем с помощью Web-технологий.

 

         1 Задание

 

         Научиться переносить данные между страницами;

         Научиться переадресовывать запросы;

         Разработать систему, выполняющую следующие функции:

         - Авторизация введенных данных о пользователе. После авторизации каждый каждая страничка должна содержать ФИО зарегистрировавшегося пользователя;

         - Ввод данных от пользователя;

         - Редактирование введенных данных;

         - Просмотр введенных данных.

 

         2 Теоретическая часть

 

Система состоит из 4-х модулей:

- Страница ввода идентификационных данных (логин/пароль).

- Главное меню.

- Страница ввода/редактирования данных.

- Просмотр введенных данных.

Рисунок 1 – Функциональная схема работы

 

        

3 Практическая реализация

 

         Данная лабораторная работа опирается на предыдущую лабораторную работу №2 «Обмен информацией между WEB-сервером и клиентом». В качестве примера для реализации можно взять систему работы с анкетными данными. Работа системы начинается со страницы «ввод логина/пароля». В случае удачной аутентификации пользователь попадает на «основное меню», из которого он может ввести/поменять,просмотреть данные о себе или выйти из системы. Переадресация на другую страницу выполняется с помощью команды протокола HTTP, реализуемую через:

         print header ("Location: login.php");

         exit;

         Данная команда должна идти первой из выводимого на поток вывода (до тега <html>), иначе переадресации не случится.

 

         Требование к безопасности:  «неавторизованные» пользователи не должны видеть ни одной странички, кроме «ввод логина/пароля». В случае, если «неавторизованный» пользователь пытается вызвать любую страницу, система должна адресовать его на страницу «ввод логина/пароля».

 

         Простейший пример реализации механизма аутентификации.

         Создаются две функции:

         get_user_id($login, $password); - в случае успешной проверки возвращает идентификатор пользователя, в случае неудачи – возвращает –1.

         get_correct_login($user_id); - проверяет корректность идентификации. В случае неудачи переадрессует на страницу «ввод логина/пароля».

 

Файл «authlib.inc»

<?php

$passwd[“Ivanov”][“id”] = 1289;

$passwd[“Ivanov”][“password”] = “pass1”;

$passwd[“Petrov”][“id”] = 1423;

$passwd[“Petrov”][“password”] = “table”;

$passwd[“Sidorov”][“id”] = 4598;

$passwd[“Sidorov”][“password”] = “nothing”;

 

         function get_user_id($login, $password) {

                  GLOBAL $passwd;

                  if ($passwd[$login][“password”] == $password) {

                            return $passwd[$login][“id”];

                  } else {

                            return –1;

                  }

         }

         function get_correct_login($user_id) {

                  GLOBAL $passwd;

                  return in_array($user_id, $passwd);

         }

         ?>

 

После чего можно использовать эту библиотеку в страницах командой

include(“authlib.inc”);

 

После чего нужно идентифицировать пользователь:

$id = get_user_id($login, $password);

if ($id == -1) {

print header ("Location: login.php");

exit;

}

 

         Для передачи параметров между страницами в формах используется тэг

         <INPUT type=”HIDDEN”>. Данный тег не отображается на форме визуально и предназначен для передачи скрытых параметров, принцип передачи – как у <INPUT type=”TEXT”>. Пример передачи идентификатора пользователя:

         <INPUT type=”HIDDEN” name=”user_id” value=”<?php print $user_id; ?>”>

 

         После чего для организации безопасности каждый файл можно начинать со строки:

$id = get_correct_login($user_id);

if ($id == -1) {

print header ("Location: login.php");

exit;

}

 

4 Контрольные вопросы

 

1 Механизмы аутентификации.

2 Авторизация введенных данных о пользователе.

3 Какие тэги используются для передачи параметров между страницами в формах.

 

 Лабораторная работа № 4. Работа с файлами в PHP на примере организации чата

 

         1 Задание

 

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

         - чтобы войти в чат, необходимо пройти регистрацию: задать ваше сетевое имя и пароль (чтобы никто не мог писать сообщения от вашего имени);

         - имя или сообщение каждого пользователя выделяется своим цветом, выбираемым пользователем на этапе регистрации;

         - на экране показываются только последние 10-30 сообщений;

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

         - когда пользователь входит в чат или выходит с чата, появляется сообщение об этом.

 

         2 Теоретическая часть

 

         Команды работы с файлами изложены (или будут изложены) на лекции. Также их можно найти в спецификации языка PHP или любой книге по PHP.

         Для реализации периодического обновления страницы используются следующие приемы:

         - обработка таймера на одном из скриптовых языков (JavaScript или VBScript) – выходит за рамки нашего курса;

         - посылка соответствующей команды HTTP-протокола браузеру перед выводом HTML-страницы – самый правильный способ, поскольку скрипты на стороне клиента можно отключать в настройках браузера. Реализуется следующим образом - в начале php-файла выполняются две команды:

         header("Refresh: 10"); // здесь 10 – время задержки, 10 секунд до обновления;

         header("URL: chat.php"); // chat.phpurl-адрес файла, на который перейти

      // после задержки.

 

         Переадресация (redirect) файла выполняется с помощью команды:

         header ("Location: enter.php");

         // enter.php – файл, на который выполняется переадресация.

         Следует помнить, что при переадресации полученные с помощью html-форм данные теряются, поэтому, если их нужно сохранить, то нужно их дописать в конец url по принципу метода GET:    file?var1=val1&var2=val2&var3=val3 и т.п., т.е.

         header ("Location: enter.php?family=Ivanov&name=Ivan");

         Невозможно передать при переадресации данные методом POST!

 

         3 Практическая часть

 

         Простейшая реализация чата состоит из трех файлов и выглядит следующим образом:

 

    

Рисунок 2 – Реализация чата

 

         Основной файл (chat.php) формирует экран пользователя, состоящий из двух частей:

         - область ввода нового сообщения (форма с полем ввода сообщения и кнопкой посылки сообщения) отвечает за формирование (дополнение) файла chat.txt;

         - область показа существующих сообщений (интерпретация и отображение файла chat.txt).

 

         Кроме того, файл chat.php сам же добавляет новые данные в файл chat.txt, для этого надо:

         - в форме в свойстве action надо вписать “chat.php”;

         - в начале файла chat.php надо проверять ввод новых данных: если ввели, то добавить их в файл chat.txt;

         Чтобы постоянно пользователь видел самые новые сообщения, необходимо реализовать механизм, заставляющий браузер периодически обновлять данные (вызывать файл chat.php без помощи пользователя).

 

         Простейшая схема файла chat.php выглядит следующим образом:

         <?php

             header("Refresh: 10"); // обновить чат через 10 секунд

             header("URL: chat.php");

         ?>

         <html> <body>

         <form method="post" action="chat.php">

                  <input type="text" name="msg">

                  <input type="submit" value="Послать">

         </form><br>

         <?php

                  if ($msg) { // проверка ввода нового сообщения

                            $fptr = fopen("chat.txt", "a"); // открыть файл на добавление

                            fwrite($fptr, $msg."<br>");

                            fclose($fptr);

         }

         // вывести файл на стандартный поток вывода

                  if (file_exists("chat.txt")) readfile("chat.txt");

         ?>

         </body> </html>

 

4 Контрольные вопросы

 

         1 Какие приемы используются для реализации периодического обновления страницы?

         2 Реализация чата.

         3 Спецификации языка php.

 

 

         Лабораторная работа № 5. Разработка WEB-приложения с регистрацией пользователя

 

         1 Задание

 

         Освоить технологии создания WEB-приложений с регистрацией пользователя. Разработать вариант WEB-приложения отличный от предлагаемого примера. Например, изменить длину пароля, осуществить запись регистрационных данных и т.д.

 

         2 Теоретическая часть

 

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

         Примечание: Для отладки проекта используется технология "петли"- (loop back).

Базовый пример состоит из двух РНР-файлов.

Пример WEB-проекта.

Начальная (индексная) страница.(Index.html)

<html>

<head>

<title>Script</title>

</head>

<body>

<br>

<a href="reg.html"><b>Регистрация</b></a><br>

<a href="pasw.html"><b>Санкционированный доступ</b></a

</body>

</html>

Регистрация.( reg.html )

<html>

<head>

<title>Регистрация</title>

<script language="javaScript">

<!--//hide

function hi()

{

alert('Отличный логин '+f1.login.value +'!!!')

}

//-->

</script>

<script language="VBScript">

         sub rezet()

         ic=msgbox("Вы действительно хотите стереть все данные?",4,"Осторожно!!!")

         if ic=6 then

document.f1.reset

end if

end sub

sub email()

st1 = document.f1.mail.value

st2 = "@"

x = InStr(1,st1,st2,1)

if x = 0 then

alert "Введите правильный e-mail, например, student@student.edu"

document.f1.mail.value = empty

document.f1.mail.focus

end if

end sub

</script>

</head>

<body >

<script language="javaScript">

document.write("<CENTER>");

document.write("<FORM NAME=\"BGColorForm\">");

document.write("<select name=\"schemesel\" onChange=\"document.bgColor = this.options[selectedIndex].value\">");

document.write("<option value=\"\FFFFFF\" selected>White");

document.write("<option value=\"0000FF\">Navy");

document.write("<option value=\"A0A0A0\">Gray");

document.write("<option value=\"E9E900\">Yellow");

document.write("<option value=\"A0A0FF\">Purple");

document.write("<option value=\"C70000\">Maroon");

document.write("<option value=\"FFFFA0\">Brown");

document.write("<option value=\"F0F0FA\">Silver");

document.write("<option value=\"FF00FF\">Fuchsia");

document.write("<option value=\"00FFFF\">Blue");

document.write("</select>");

document.write("</FORM>");

document.write("</CENTER>");

</script>

<font size=6 color=blue><center>Регистрация</center></font>

<br><br>

<font size=4>

<form method=post action="cgi-bin/reg.pl" name="f1">

Логин&nbsp&nbsp<input type=text name="login" onBlur="hi()"><br><br>

<hr>

Какой-то вопрос?<br>

Да<input type=radio name="est-net" value=yes checked >

Нет<input type=radio name="est-net" value=no onClick="nocar()">

50 на 50<input type=radio name="est-net" value=kuplu onClick="car()">

<br><br><br>

Ваши предпочтения?

<select name="country" size=1>

<option selected value="1">1

<option selected value="2">2

<option selected value="3">3

<option selected value="4">4

</select><br><br>

Дополнительные сведения

<textarea name="car" cols=40 rows=3>

</textarea><br><br>

         Ваш e-mail<input type="text" size=20 name="mail" onBlur="email()"><br><br>

<input type="submit" value="Отправить!!!">

<input type="button" value="Сброс" onClick="rezet()"><br>

</form>

</body>

</html>

Ввод логина пароля.( pasw.html )

<html>

<head>

<title>Password</title>

<script language="javaScript">

</script>

<script language="VBScript">

sub submid()

if document.f1.log.value = empty then

alert "Вы не не ввели логин!!!"

ElseIf document.f1.key.value = empty then

alert "Вы не не ввели пароль!!!"

else

document.f1.submit

end if

end sub

</script>

</head>

<body>

<h1><center>Введите логин и пароль</center></h1><br>

<form method=post action="cgi-bin/pas.pl" name="f1">

<h3>Логин&nbsp&nbsp <input type=text size=14 name="log"><br>

<h3>Пароль <input type=password size=14 name="key"><br><br>

<input type=button value="Подключится" onClick="submid()">

<input type=reset>

</form>

</body>

</html>

Серверный скрипт -генерация паролей.( reg.pl)

#!c:\phpdev\perl\bin\perl.exe

read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'});

@pairs = split(/&/,$buffer);

foreach $pair(@pairs){

($name,$value)=split(/=/,$pair);

$value=~tr/+/ /;

$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;

$value=~s/<!--(.|\n)*-->//g;

$input{$name}=$value;

}

$back="http://127.0.0.1/reg.html";

$klub="http://127.0.0.1/s/klub.html";

$fl="../paroli.txt";

open (A,"<$fl");

#Процедура проверки пароля

$buf = <A>;

@paras = split(/&/,$buf);

foreach $para(@paras){

($login,$code)=split(/=/,$para);

push @cod,$code;

}

if (!$input{'login'} || !$input{'mail'})

{

print "Content-Type:text/html\n\n";

print "<body background=$path vlink=blue>";

print "<h1><center>Вы не ввели все данные</center></h1>";

         print "<h3><center>Попробуйте еще раз. <a href=$back>Вернутся на главную страницу.</a></center>";

         print "<br><center><img src=$scel></center> ";

}

else

{

print "Content-Type:text/html\n\n";

$rezult = 0;

label: if (($pasw=int(rand 99999))<10000)

{

goto label;

}

else

{

foreach $par(@cod)

{

if ($pasw == $par)

{

goto label;

}

else

{

$rezult = 1;

}

}

}

}

if ($rezult == 1)

{

#print "@cod[4]";

print "<body background=$path vlink=blue>";

          "<font size=6 color=green>Ваши идентификационные данные приняты и сохранены</h2></font><hr>";

         print "Логин: $input{'login'}<br>";

         print "Вы получили свой персональный пароль <font color=red size=5><i>$pasw</i></font>";

print "&nbspзапомните его!!!<br>";

print "<a href=$klub>для зарегистрированных пользователей</a>";

open(A,">>../paroli.txt");

print A "$input{'login'}=$pasw&";

}

close(A);

Серверный скрипт - проверка пароля и логина.( pas.pl)

#!c:\phpdev\perl\bin\perl.exe

read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'});

@pairs = split(/&/,$buffer);

foreach $pair(@pairs){

($name,$value)=split(/=/,$pair);

$value=~tr/+/ /;

$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;

$input{$name}=$value;

}

$fl="../paroli.txt";

open (A,"<$fl");

#Процедура проверки пароля

$buf = <A>;

@paras = split(/&/,$buf);

foreach $para(@paras){

($login,$code)=split(/=/,$para);

push @cod,$code;

push @login,$login;

}

#Конец процедуры проверки

$klub="http://127.0.0.1/s/klub.html";

$kod=0;

$logi=0;

$max = $#cod;

for ($i=0; $i<=$max;$i++){

if (@cod[$i] == $input{'key'} && @login[$i] eq $input{'log'})

{

print "Status: 302\n";

print "Location: http://127.0.0.1/s/klub.html\n";

last;

}

else

{

if ($i == $max){

print "Status: 302\n";

print "Location: http://127.0.0.1/s/no.html\n";}

}

}

В папке s размещаются:

Файл klub.html.

<html>

<head>

<title>Клуб</title>

</head>

<font size=7>Страница зарегистрированных пользователей</font><br>

<br>

</body>

</html>

Файл no.html.

<html>

<head>

<title>Warring</title>

</head>

<body>

<H1>У вас нет доступа, пройдите регистрацию</h1>

</body>

</html>

В папке www размещается текстовый файл paroli.txt.

 

         3 Контрольные вопросы

 

         1 Какие функции у клиентских скриптов в данном WEB-проекте?

         2 Какие функции у серверных скриптов в данном WEB-проекте?

         3 Как осуществляется проверка пароля и логина в приведенном примере?

 

         Лабораторная работа № 6. Разработка WEB-приложения с элементами защиты информации

 

         1 Задание

 

         Освоить технологии создания WEB-приложений с элементами защиты информации. Разработать вариант WEB-приложения отличный от предлагаемого примера.

2 Теоретическая часть

 

         В примере рассмотрены серверные сценарии, использующие шифрование необходимых сообщений по алгоритму хеширования MD5, в РНР алгоритм реализован в виде специальной функции, ее синтаксис md5(строка). Алгоритм хеширования применяется и в механизме цифровой подписи, широко применяемой в интернет-приложениях.

         Примечание: для отладки проекта используется технология "петли"- (loop back).

Пример WEB-проекта.

Шифрование пароля.(md5.php)

<?

$pass="admins_pass";

$res=md5($pass);

echo $res;

?>

 

Image113

 

Результат записывается в файл pas.txt

Проверка пароля и логина (1md5.php)

<?php

//Если нажата кнопка "Войти"

if (isset($GLOBALS['enter']))

{

//Читаем хеш из файла pas.txt

$s=file('pas.txt');

//Получаем хеш от пароля, введенного пользователем

$hash=md5($GLOBALS['passwd']);

//Сравниваем хеш пароля и логин с теми.

if (($s[0]==$hash) and ($GLOBALS['login']=='admin'))

{

require_once ("admin.php");

exit;

}

else {

echo "Логин или пароль неверные";

echo "<a href ='http://localhost/1md5.php'>Назад</а>";

exit;

}

}

?>

<! — Форма — >

<FORM action='http://localhost/1md5.php' method='POST'>

Логин :<input type='text' name='login'>

<BR><BR>

Пароль :<input type='password' name='passwd'>

<BR><BR>

<input type='submit' name='enter' value='Войти'>

</FORM>

         Файл admin.php содержит информацию доступную владельцу логина admin

         (например, admin.php может содержать код: <?php phpinfo(); ?>).

         В папке www размещается текстовый файл pas.txt. Данный пример приводится для РНР 4 версии, при использовании РНР 5 версии следует изменить имена массивов $GLOBALS на $_POST.

 

3 Контрольные вопросы

 

1 Как преобразовываются данные в примере?

2 Каковы функции у серверных скриптов в данном WEB-проекте?

3 Каков механизм проверки пароля и логина в приведенном примере?


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

 

1. Петров В.Н.Информационные системы.Учебник.- СПб.:Издательство "Питер", 2002.

2. Прохоров А.Н. Интернет: как это работает.- СПб.:БХВ-Петербург, 2004.

3. Ганеев Р.М. Проектирование интерактивных WEB-приложений.–М., 2001.

4. Косентино К. РНР. Web - профессионалам: Пер. с англ. - К.: Издательская группа BHV, 2001.

5. Кузнецов С.Д. РНР 4.0.Руководство пользователя.- М.: Майор, 2001.

6. Дунаев В.В.Сам себе Web-дизайнер.–Спб.:Арлит. 2002.

 

 

Содержание 

Лабораторная  работа №1. Базовые элементы PHP

Лабораторная работа №2. Обмен информацией между
WEB-сервером и клиентом

Лабораторная работа №3. Разработка диалоговых систем с помощью WEB-технологий     

Лабораторная работа №4. Работа с файлами в PHP на примере организации чата

Лабораторная работа №5. Разработка WEB-приложения с регистрацией пользователя

Лабораторная работа №6. Разработка WEB-приложения с элементами защиты информации

3

6

 

8

 

11

 

14

 

21