Відсутні засоби динамічної модифікації вмісту інтерфейсних форм та зображень. Тому основний метод – динамічна модифікація самого тексту HTML.
Відсутні механізм підтримки сучасних архітектур типу «клієнт-сервер» та трьохрівневих архітектур. Тому неможливо обмінюватися даними ані з сервером БД, ані з сервером застосувань як на боці сервера, де генеруються тексти HTML, так і на боці клієнта, де ці тексти інтерпретуються.
Мова має обмежені засоби реакції на дії користувача в інтерфейсних формах.
Лекція 12
МЕТОДИ СТВОРЕННЯ ДИНАМІЧНИХ WEB-СТОРІНОК
Зміст
Метод 1. Сценарії CGI 1
Форми. 1
Сценарії CGI 2
Взаємодія між Web-сторінкою та сценарієм CGI (приклади) 2
Деякі аспекти взаємодії web-сторінок та сценаріїв CGI 3
Змінні середовища CGI 3
Метод 2. Застосування інтерфейсу ISAPI 4
Створення застосувань за стандартами CGI та ISAPI 4
Недоліки сценаріїв CGI та інтерфейсу ISAPI 4
Метод 3. Інтерпретація коду програми на сервері. 5
Мови інтерпретації сценаріїв. 5
Властивості мов інтерпретації сценаріїв. 6
Недоліки технологій інтерпретації сценаріїв. 6
Приклад. Сценарій мовою PHP. 6
Технологія ASP. 6
Основні об’єкти ASP. 7
Приклади сценаріїв мовою ASP. 7
Метод 1. Сценарії CGI
Головна ідея полягає в створенні певного застосування, яке буде динамічно генерувати новий HTML-код. На вхід такого застосування надходять певні параметри (дані, які користувач вводить у формі або командному рядку), а на виході застосування генерує текст HTML-коду.
Таке застосування називають CGI (Common Gateway Interface – загальнодоступний шлюзовий інтерфейс). Це інтерфейс для активації зовнішніх програм на сервері у відповідь на дії клієнта, який здійснив з’єднання з web-сервером через глобальну мережу.
Форми
Форми – це механізм передачі інформації між користувачем та web-сервером через web-браузер.
Інформація вводиться за допомогою вбудованих в HTML-файл елементів і передається сценарію.
Сценарії, як правило містяться на web-сервері у каталозі cgi-bin.
Синтаксис елемента <form> задається так:
<form method=”type” action=”cgi-script”>text</form>
Такий елемент надсилає вміст форми як частину URL. В елементі <form>… type приймає два значення:
· GET – дані передаються сценарію через змінну оточення QUERY_STRING;
· POST – дані передаються через звичайний процес читання.
Існує кілька елементів, які дозволяють передавати інформацію CGI-сценарію:
ü Тег <input type=text name=”Name” size=n> формує поле введення шириною в n. Пара (“name” – введений користувачем в поле введення текст) передається CGI-сценарію, коли користувач надсилає дані на сервер (в мові Perl така пара може бути організованою як асоціативний масив для асоціювання вказаного імені та введеного текста);
ü Тег <input type=submit value=”SEND”> створює кнопку з написом send. Натискання мишкою на цій кнопці надсилає введені в форму дані CGI-сценарію на web-сервері;
ü Тег <input type=reset value=”RESET”> створює кнопку з надписом reset, натискання на яку мишкою викликає вилучення всіх введених в формі даних і дозволяє ввести нові дані для надсилання форми на web-сервер;
ü Тег <input type=password> створює текстове поле для введення користувачем пароля (текст не відображається на екрані);
ü Тег <input type=file> дозволяє передавати на web-сервер великі файли;
ü Тег <input type=checkbox> створює елемент керування – ознаку, яка може бути обраною або скинутою незалежно від інших ознак на формі;
ü Тег <input type=ratio> створює групу перемикачів, із яких може бути обраним лише один. Для цього необхідно при створенні перемикачів групи задати для них одне і те ж значення атрибуту name;
ü Тег <textarea name=”Name” rows=”n1” cols=”n2”> як і тег input створює текстове поле для введення даних із тією різницею, що створюване поле може бути багаторядковим (значення атрибуту rows буде більше 1).