Методические указания - "Web-программирование", "Системное

advertisement
Министерство Образования и Науки
Российской Федерации
НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
№ ____
«Средства разработки приложений»
Методические указания к лабораторным работам
для слушателей, получающих дополнительную квалификацию
«Специалист в области компьютерной графики и
Web-дизайна (Web-дизайнер)»
НОВОСИБИРСК
2007
Составитель: А.В. Гунько, канд. техн. наук, доц.
Рецензент
Ю.В. Новицкая, ст. преп. каф. ВТ
Работа подготовлена на кафедре автоматики
© Новосибирский государственный
технический университет, 2007 г.
Общие методические указания по выполнению лабораторных работ
Для подключения к серверу MySQL применяйте терминальные программы,
поддерживающие протокол ssh, различные кодовые страницы и функциональные
клавиши, напимер, telneat или putty.
Сервер MySQL расположен на компьютере с адресом 217.71.139.94 под управлением ОС
Linux, учетное имя для подключения: userM, где M- Ваш номер по журналу, пароль
сообщается преподавателем.
Подключение к СУБД производится командой
mysql dbname -u username -p password,
где dbname – имя базы данных, совпадает с именем учетной записи, username – имя
учетной записи (совпадает с аналогичным в ОС), password – пароль (совпадает с
аналогичным в ОС).
Собственно пароль в командной строке лучше не вводить, а оставить ключ -p, тогда
пароль будет запрошен дополнительно. Для выхода из монитора применяется команда exit
или quit.
Базы данных пользователей и права доступа к ним создаются администратором. Вам
доступна лишь Ваша (userM, где M- Ваш номер по журналу) база, операции создания и
удаления таблиц, извлечения, вставки, добавления, удаления записей и изменения
структуры таблиц.
При работе с монитором mysql заканчивайте команды точкой с запятой.
Длинные команды (создания таблиц, ввода данных в таблицу) лучше вводить в текстовый
файл, передаваемый монитору через командную строку.
Монитор mysql помнит в буфере ранее введенные команды. Для их вызова используйте
стрелку вверх.
По окончании работы с базой данных выгрузите ее структуру и данные в текстовый файл
и сохраните его. Он пригодится для восстановления испорченной или уничтоженной базы
данных.
Выгрузить в текстовые файлы структуру и содержимое базы данныхможно с помощью
утилиты mysqldump, сохранить на локальной машине и распечатать эти файлы.
Для копирования файлов на Web-сервер используйте имеющиеся на локальном
компьютере ftp-клиенты, например, файловый менеджер FAR. Он позволяет
редактировать файлы непосредственно на ftp-сервере.
Для обеспечения сохранности сценариев, попросите преподавателя сменить выданный
пароль доступа к ftp-серверу на более сложный.
При написании сценариев обращайте внимание на кодировку русского текста,
правильность написания HTML-тегов и имен объектов и компонентов ASP, парность
открывающих (<%) и закрывающих (%>) тегов сценария.
При работе в трехзвенной сетевой архитектуре доступ к базе данных осуществляется с
компьютера, на котором расположен Web-сервер. Указанный в сценарии пользователь
должен иметь право доступа к базе данных с этого компьютера. Попросите преподавателя
задать необходимые права доступа к базе данных.
При отладке сценариев обновляйте содержимое окна браузера при нажатой клавише Shift.
При отладке сценариев для проверки передачи данных из форм вы можете применять
метод Get. Однако при этом разбор принятых данных необходимо производить
посредством соответствующим методом.
Сообщения об ошибках объектов и компонентов ASP выводятся в окно браузера в
западно-европейской кодировке. Для уяснения смысла сообщения скопируйте его в
документ Word и измените шрифт на любой, содержащий только русскую кодировку
(например, AG_Helvetica).
По окончании отладки сценариев скопируйте их на локальный компьютер для сохранения
и распечатки.
Темы лабораторных работ:
1. Обработка данных и работа с теневыми посылками в ASP.
2. Работа с текстовыми файлами в ASP.
3. Работа с базами данных в ASP (извлечение, поиск и добавление записей).
4. Работа с базами данных в ASP (изменение, удаление записей).
5. Обработка данных и работа с теневыми посылками в Perl.
6. Работа с текстовыми файлами в Perl.
7. Работа с базами данных в Perl (извлечение, поиск и добавление записей).
8. Работа с базами данных в Perl (изменение, удаление записей).
9. Обработка данных и работа с теневыми посылками в PHP.
10. Работа с текстовыми файлами в PHP.
11. Работа с базами данных в PHP(извлечение, поиск и добавление записей).
12. Работа с базами данных в PHP(изменение, удаление записей).
Лабораторная работа № 1.
Обработка данных и работа с теневыми посылками в ASP.
1. Цель работы
Изучить методы получения данных из форм, методы чтения и записи теневых посылок.
2. Краткие теоретические сведения
Теневая посылка (cookie) обновляется при каждом посещении, поэтому ее чтение и запись
производятся в одном сценарии. Сценарий предполагает получение данных формы,
определение текущей даты, проверку наличия cookie, ее считывание и запись,
отображение предыдущего содержимого теневой посылки.
Получение данных формы зависит от метода ее отправки: при использовании метода
POST применяется метод Form объекта Request, при использовании метода GET
применяется метод Querystring объекта Request:
name=Request.Form("name")
textarea=Request.Form("textarea")
list=Request.Form("list")
В качестве аргумента используется имя поля формы.
Текущая дата определяется функцией Date(Now).
Зная имя теневой посылки и мена хранящихся в ней переменных, проверяется наличие
значения переменной (value) в указанной теневой посылке (visit):
not isEmpty (Request.Cookies("visit")("value"));
Новое значение переменной и срок действия теневой посылки устанавливается так:.
Response.Cookies("visit")("value") = data
Response.Cookies("visit").Expires = Date + 365
Запись теневой посылки всегда производится до начала отображения результатов работы
сценария.
3. Методические указания
3.1. Для разработки сценариев применяйте любые доступные текстовые редакторы,
например, Jview или встроенный редактор файлового менеджера FAR при наличии
плагина Colorer.
3.2. Сценарии располагаются на сервере с адресом 217.71.139.66, подключение к
которому производится по протоколу FTP с именем учетной записи userM, где MВаш номер по журналу, пароль сообщается преподавателем.
3.3. При настройки клиента FTP необходимо установить пассивный режим.
3.4. При разработке страниц периодически проверяйте их отображение в любом из
доступных браузеров.
3.5. По окончании лабораторной работы сохраните документы сайта на сменный
носитель.
4. Порядок выполнения работы
4.1. Разработать Web-страницу с формой, содержащей не менее двух различных
элементов управления (указаны в вариантах заданий).
4.2. Разработать сценарий в технологии ASP, проверяющий наличие теневой посылки на
компьютере посетителя, при ее наличии выводящий данные из теневой посылки в
браузер, при ее отсутствии отображающий страницу с формой, считывающий
данные формы и сохраняющий их и текущую дату в теневой посылке.
4.3. Продемонстрировать сайт преподавателю.
4.4. Сохранить файлы сценария на локальный компьютер.
5. Варианты заданий
Вариант 1. Текстовое поле для ввода имени пользователя и кнопка отправки данных.
Вариант 2. Список для выбора языка отображения страницы и кнопка отправки данных.
Вариант 3. Текстовое поле для ввода даты рождения пользователя и кнопка отправки
данных.
Вариант 4. Список для выбора кодировки страницы и кнопка отправки данных.
Вариант 5. Набор радиокнопок для выбора прав доступа (пользователь, модератор,
администратор) и кнопка отправки данных.
Вариант 6. Набор флажков для выбора допустимых режимов работы (чтение, запись,
изменение, удаление) и кнопка отправки данных.
Вариант 7. Набор радиокнопок для выбора кодировки страницы и кнопка отправки
данных.
Вариант 8. Набор флажков для выбора управляемых компонентов сайта (текст,
графические данные, стили оформления) и кнопка отправки данных.
6. Содержание отчета
6.1. Цель работы.
6.2. Вариант задания.
6.3. Листинг сценариев.
7. Контрольные вопросы
7.1.
7.2.
7.3.
7.4.
Атрибуты тега <FORM>.
Методы получения данных из формы.
Структура теневой посылки.
Методы чтения и записи теневой посылки.
Лабораторная работа № 2.
Обработка данных и работа с текстовыми файлами в ASP.
1. Цель работы
Изучить методы получения данных из форм, методы чтения и записи текстовых файлов.
2. Краткие теоретические сведения
При работе с текстовыми файлами как правило применяется построчная запись и чтение,
поэтому заранее формируется строка с разделителями - табуляцией, символом с кодом 9:
outputstring = data&Chr(9)+name+Chr(9)+textarea+Chr(9)+list.
Перед открытием файла требуется создать объект FileSystemObject:
Set FileObject = CreateObject("Scripting.FileSystemObject").
Файл может открываться на добавление (8) (на запись: 2, на чтение: 1), при отсутствии создается (TRUE), в системной кодировке (-2) (Uincode=-1, ASCII=0):
Set File = FileObject.OpenTextFile (Server.MapPath("1a3.txt"),
8, TRUE, FALSE)
Файл открывается в указанном каталоге (Server.MapPath), в который разрешена запись из
сценариев (в данном случае – в текущем).
В файл, открытый на запись и добавление, можно только записывать, в данном случае
целесообразно писать построчно:
File.WriteLine(outputstring).
По окончании работы с файлом или при необходимости изменить режим работы с ним его
необходимо закрыть:
File.Close.
При чтении файла необходимо отслеживать его окончание:
while (not File.AtEndOfStream).
При этом текущую строку можно считать или пропустить:
a = File.ReadLine
File.SkipLine
3. Методические указания
3.1. Для разработки сценариев применяйте любые доступные текстовые редакторы,
например, Jview или встроенный редактор файлового менеджера FAR при
наличии плагина Colorer.
3.2. Сценарии располагаются на сервере с адресом 217.71.139.66, подключение к
которому производится по протоколу FTP с именем учетной записи userM, где
M- Ваш номер по журналу, пароль сообщается преподавателем.
3.3. При настройки клиента FTP необходимо установить пассивный режим.
3.4. При разработке страниц периодически проверяйте их отображение в любом из
доступных браузеров.
3.5. По окончании лабораторной работы сохраните документы сайта на сменный
носитель.
4. Порядок выполнения работы
4.1. Разработать Web-страницу с формой, содержащей не менее трех различных
элементов управления (указаны в вариантах заданий).
4.2. Разработать сценарий в технологии ASP, считывающий данные формы и
сохраняющий их и текущую дату в текстовом файле с последующим
отображением последней записи из файла в браузере.
4.3. Продемонстрировать сценарий преподавателю.
4.4. Сохранить файлы сценария на локальный компьютер.
5. Варианты заданий
Вариант 1. Текстовое поле для ввода имени пользователя, текстовое поле для ввода даты
рождения пользователя и кнопка отправки данных.
Вариант 2. Список для выбора темы обсуждения, поле TEXTAREA для ввода сообщения
и кнопка отправки данных.
Вариант 3. Текстовое поле для ввода имени пользователя, поле TEXTAREA для ввода
комментария и кнопка отправки данных.
Вариант 4. Список для выбора наименования товара, текстовое поле для ввода
количества товара и кнопка отправки данных.
Вариант 5. Набор радиокнопок для выбора дня недели, список для выбора интервала
времени для связи и кнопка отправки данных.
Вариант 6. Набор флажков для выбора дня недели, список для выбора интервала времени
для связи и кнопка отправки данных.
Вариант 7. Набор радиокнопок для выбора кодировки сообщения, поле TEXTAREA для
ввода сообщения и кнопка отправки данных.
Вариант 8. Набор флажков для выбора вариантов оформления текста, поле TEXTAREA
для ввода комментария и кнопка отправки данных.
6. Содержание отчета
6.1. Цель работы.
6.2. Вариант задания.
6.3. Листинг сценариев.
7. Контрольные вопросы
7.1.
7.2.
7.3.
7.4.
Создание объектов File System Object и TextStream.
Режимы открытия текстовых файлов и их реализация в ASP.
Методы записи в текстовый файл.
Методы чтения из текстового файла.
Лабораторная работа № 3.
Работа с базами данных в ASP (извлечение, поиск и добавление записей).
1. Цель работы
Изучить методы подключения к базам данных, выполнение запросов на извлечение и
добавление записей, методы и свойства объекта RecordSet.
2. Краткие теоретические сведения
Среди компонентов ASP имеется компонент доступа к базам данных ActiveX Data Objects
(ADO). Он и содержащиеся в нем объекты применяются для чтения и записи данных в
источники данных ODBC. Объект Connection (подсоединение) создается методом
CreateObject объекта Server, и ссылка на него помещается в переменную. Когда объект
создан, его используют для открытия подсоединения к любому источнику данных ODBC.
Источник данных ODBC создается апплетом Панели управления Windows, который при
удаленной работе оказывается недоступен. В этой ситуации применяют файловый DSN
(Data Source Name), создав который, можно скопировать файл с расширением .dsn в тот
же каталог, что и сценарий, обращающийся к базе данных. Используется он так:
sDSNFil = "mysql.dsn"
sDSN = "filedsn=" & sPath & sDSNFil & ";"
где sPath - путь к файлу источника данных.
Чтобы не вставлять данный код в каждый сценарий, в котором требуется обращение к
базе данных, применяют файлы включения (подобно include-файлам в языке С):
<!-- #include file ="dsn.asp" -->
Следующий фрагмент кода устанавливает подсоединение к источнику данных ODBC:
<% Dim objConnection
Set objConnection = Server.CreateObject("ADODB.Connection")
objConnection.Open "Publications", "sa", "" %>
Метод Open устанавливает подсоединение, принимая в качестве аргументов имя
источника данных, идентификатор пользователя и пароль.
Когда подсоединение установлено, получать информацию из источника данных можно
при помощи объекта Recordset (набор записей). Этот объект умеет выполнять оператор
SELECT языка SQL и возвращать набор записей, удовлетворяющих этому запросу.
Объект Recordset создается методом CreateObject. При применении файлового DSN
подсоединение можно совместить с извлечением данных:
Set objRecordset = Server.CreateObject("ADODB.Recordset")
objRecordset.Open "SELECT name FROM people", sDSN
После того, как записи получены, для передвижения по ним можно обращаться к методам
MoveFirst, MoveLast, MoveNext и MovePrevious, пока не будет достигнут конец (RS.EOF)
или начало (RS.BOF) объекта. Для перемещения по полям текущей записи можно
применять следующий код:
For i=1 to RS.Fields.Count-1
response.write RS.fields(i).name&": "&RS.fields(i).value
next
Здесь метод Write объекта Response помещает данные на Web-страницу.
Модифицировать данные можно при помощи SQL-операторов INSERT, UPDATE,
DELETE:
sSQL = "INSERT into Users values (0,’”+ user+”’,”+ pswd + "')”
sSQL = "UPDATE Users SET Users.Pswd= '" & pswd & "' WHERE
Users.User_ID = " + id
sSQL = "DELETE from Users WHERE Users.User_ID = " + id
Rs.Open sSQL, sDSN
При этом строковые параметры подклеиваются в текст запроса в кавычках, а числовые –
без.
По окончании работы с базой данных необходимо освободить ресурсы, закрыв созданные
объекты и очистив ссылки на них:
RS.Close
Set RS = Nothing
3. Методические указания
3.1. Для разработки сценариев применяйте любые доступные текстовые редакторы,
например, Jview или встроенный редактор файлового менеджера FAR при
наличии плагина Colorer.
3.2. Сценарии располагаются на сервере с адресом 217.71.139.66, подключение к
которому производится по протоколу FTP с именем учетной записи userM, где
M- Ваш номер по журналу, пароль сообщается преподавателем.
3.3. При настройки клиента FTP необходимо установить пассивный режим.
3.4. При разработке страниц периодически проверяйте их отображение в любом из
доступных браузеров.
3.5. По окончании лабораторной работы сохраните документы сайта на сменный
носитель.
4. Порядок выполнения работы
4.1. Разработать сценарий (стартовый) в технологии ASP, производящий
подключение к базе данных MySQL, считывающий данные формы поиска, при
их наличии формирующий и выполняющий запрос на поиск, при их отсутствии
выводящий в табличном виде содержимое таблицы-связки с подстановкой
значений из таблиц-справочников, содержащий ссылку на сценарий добавления
записей в базу данных.
4.2. Разработать сценарий в технологии ASP, производящий подключение к базе
данных MySQL, считывающий содержимое формы ввода данных, в которой
значения из таблиц-справочников представлены в виде списков, формирующий и
выполняющий запрос на вставку данных, выполняющий перенаправление
браузера на сценарий извлечения данных для контроля результата вставки.
4.3. Продемонстрировать сценарии преподавателю.
4.4. Сохранить файлы сценариев на локальный компьютер.
5. Варианты баз данных
Вариант 1. База данных о студентах, для их распределения по местам практики: фамилия,
год рождения, пол, группа, факультет, средний балл, место работы, город.
Вариант 2. База данных об автомобилях: номер, год выпуска, марка, цвет, состояние,
фамилия владельца, адрес.
Вариант 3. База данных о квартирах, предназначенных для продажи: район, этаж,
площадь, количество комнат, сведения о владельце, цена.
Вариант 4. База данных о книгах, купленных библиотекой: название, автор, год издания,
адрес автора, адрес издательства, цена, книготорговая фирма.
Вариант 5. База данных о сотрудниках, имеющих компьютер: фамилия, номер комнаты,
название отдела, данные о компьютерах.
Вариант 6. База данных о заказах, полученных сотрудниками фирмы: фамилия, сумма
заказа, наименование товара, название фирмы - клиента, фамилия заказчика.
Вариант 7. База данных об оценках, полученных студентами на экзаменах: фамилия,
группа, предмет, номер билета, оценка, преподаватель.
Вариант 8. База данных о преподавателях кафедры: фамилия, должность, степень, номер
комнаты, читаемые курсы.
6. Содержание отчета
6.1. Цель работы.
6.2. Вариант задания.
6.3. Листинг сценариев.
7. Контрольные вопросы
7.1.
7.2.
7.3.
7.4.
7.5.
7.6.
7.7.
Типы источников данных.
Использование файлового DSN.
Применение файлов включения.
Процедура подключения к базе данных из ASP.
Перемещение по записям в объекте Recordset.
Перемещение по полям в объекте Recordset.
Очистка объекта Recordset и закрытие подключения к базе данных.
Лабораторная работа № 4.
Работа с базами данных в ASP (изменение и удаление записей).
1. Цель работы
Изучить методы подключения к базам данных, выполнение запросов на изменение и
удаление записей.
2. Краткие теоретические сведения
См. лабораторную работу №3.
3. Методические указания
См. лабораторную работу №3.
4. Порядок выполнения работы
4.1. Модифицировать стартовый сценарий из лабораторной работы №3, добавив в
таблицу с извлеченными из базы данными ссылки на сценарии изменения и
удаления записей с передачей индекса выбранной записи методом GET.
4.2. Разработать сценарий в технологии ASP, производящий подключение к базе
данных MySQL, извлекающий и отображающий данные изменяемой записи в
форме с подстановкой значений из таблиц-справочников, а остальных полей базы
– в текстовых полях (свойство value), реализующий запрос на изменение записи,
выполняющий перенаправление браузера на сценарий извлечения данных для
контроля результата вставки.
4.3. Разработать сценарий в технологии ASP, производящий подключение к базе
данных MySQL, удаляющий выбранную запись, выполняющий перенаправление
браузера на сценарий извлечения данных для контроля результата удаления.
4.4. Продемонстрировать сценарии преподавателю.
4.5. Сохранить файлы сценариев на локальный компьютер.
5. Варианты баз данных
См. лабораторную работу №3.
6. Содержание отчета
6.1. Цель работы.
6.2. Вариант задания.
6.3. Листинг сценариев.
7. Контрольные вопросы
7.1.
7.2.
7.3.
7.4.
7.5.
7.6.
7.7.
Типы источников данных.
Использование файлового DSN.
Применение файлов включения.
Процедура подключения к базе данных из ASP.
Перемещение по записям в объекте Recordset.
Перемещение по полям в объекте Recordset.
Очистка объекта Recordset и закрытие подключения к базе данных.
Контрольная работа
Контрольная работа предусматривает разработку динамического сайта на одном из языков
сценариев и включает в себя:
1. Программирование сценария извлечения контента сайта (или его части) из базы
данных;
2. Программирование сценария регистрации посетителей с помощью теневых
посылок;
3. Программирование сценария подсчета количества посещений сайта с помощью
текстового счетчика посещений;
4. Программирование сценария фиксации комментариев по поводу сайта в гостевой
книге;
5. Публикацию сайта;
6. Составление расчетно-пояснительной записки объемом 5 м.п. листов.
ПРИМЕР варианта лабораторной работы № 7.
1. Разработать Web-страницу с формой, содержащей не менее двух различных
элементов управления.
2. Разработать сценарий на языке Perl, проверяющий корректность данных формы
и сохраняющий их и текущую дату в теневой посылке на компьютере
посетителя.
ПРИМЕР варианта лабораторной работы № 8.
1. Разработать Web-страницу с формой, содержащей не менее трех различных
элементов управления.
2. Разработать сценарий на языке Perl, проверяющий корректность данных формы
и сохраняющий их и текущую дату в текстовом файле на web-сервере.
ПРИМЕР варианта лабораторной работы № 9.
Разработать web-сайт на языке Perl, реализующий запросы на поиск, изменение,
добавление и удаление записей в базе данных согласно варианту.
ПРИМЕР варианта лабораторной работы № 10.
1. Разработать Web-страницу с формой, содержащей не менее двух различных
элементов управления.
2. Разработать сценарий на языке PHP, проверяющий корректность данных
формы и сохраняющий их и текущую дату в теневой посылке на компьютере
посетителя.
ПРИМЕР варианта лабораторной работы № 11.
1. Разработать Web-страницу с формой, содержащей не менее трех различных
элементов управления.
2. Разработать сценарий на языке PHP, проверяющий корректность данных
формы и сохраняющий их и текущую дату в текстовом файле на web-сервере.
ПРИМЕР варианта лабораторной работы № 12.
Разработать web-сайт на языке PHP, реализующий запросы на поиск, изменение,
добавление и удаление записей в базе данных согласно варианту.
Download