Валідація та збереження даних форм


Опрацювати теоретичний матеріал:

Теоретичні відомості

Введення інформації можна організувати не лише через діалогові вікна, а й за допомогою форм — наборів елементів керування забезпечують взаємодію людини з програмою. Користувач може вводити інформацію з клавіатури, а також вибираючи потрібні перемикачі чи прапорці. Його дії потім опрацьовує програма-сценарій.

Елементи форми

Форма може містити поля для введення текстової інформації, списки для вибору заздалегідь визначених відповідей, прапорці, перемикачі, кнопки та інші елементи керування. Розглянемо докладніше деякі з них.

Текстові поля

Для введення текстових даних у спеціальні поля використовують тег <INPUT>, в якого атрибут TYPE має значення t e x t :

<INPUT TYPE="text">

Інші атрибути тегу <INPUT>:

• NAME — ім'я змінної, в якій зберігається введене значення;

• VALUE — початкове значення;

• SIZE — довжина текстового поля;

• MAXLENGTH — максимальна кількість символів для введення.

Цей самий тег, в якого атрибут TYPE має значення password використовують у разі потреби ввести пароль. При цьому надруковані символи будуть приховані за зірочками чи крапками.

<INPUT TYPE="password">

Для текстів великого обсягу зі смугами прокручування використовують парний тег <TEXTAREA> з такими атрибутами:

• ROWS — висота текстового прямокутника в символах;

• COLS — ширина текстового прямокутника в символах;

• WRAP — визначення способу переходу на інший рядок (off — за допомогою клавіші Enter, v i r t u a l — автоматично);

• NAME — ім'я для доступу до текстової області з програми-сценарію.

 Перемикачі

Щоб дізнатися про думку відвідувача з того чи іншого приводу, не змушуючи його вводити інформацію, використовують перемикачі з варіантами відповідей. Відвідувач переглядає їх і вибирає потрібний. Перемикачі дають змогу вибрати лише один із запропонованих варіантів.

Для створення перемикачів використовують тег <INPUT>, в якого атрибут TYPE (тип) має значення radio. Групі перемикачів, що стосуються одного питання, обов'язково присвоюють однакове ім'я (NAME). Атрибут VALUE позначає відповідний перемикачу варіант відповіді для розробника форми, тоді як напис після тегу

<INPUT> — для користувача. Для вибору одного з перемикачів за умовчанням використовують атрибут CHECKED.

<Н4>Вибери мову:</Н4>

<INPUT TYPE="radio" NAME="lang" VALUE="українська" CHECKED>Українська <BR>

<INPUT TYPE="radio" NAME="lang" VALUE="російська">Російська <BR>

<INPUT TYPE="radio" NAME="lang" VALUE="англійська">Англійська <BR>

Прапорці

Прапорці дають змогу вибирати кілька варіантів із запропонованих.

Для них атрибут TYPE тегу <INPUT> має значення checkbox.

Вибери екзамен:

<INPUT TYPE="checkbox" NAME="exam" VALUE="українська"> Українська <BR>

<INPUT TYPE="checkbox" NAME="exam" VALUE="фізика"> Фізика <BR>

<INPUT TYPE="checkbox" NAME="exam" VALUE="математика">

Математика <BR>

Списки

Списки, які можна розміщувати у формі так само, як перемикачі та прапорці, також позбавляють відвідувачів веб-сторінки від

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

тегами <SELECT> та </SELECT>, а його елементи визначають за допомогою тегу <OPTION>. Наприклад:

Район:

<SELECT>

<OPTION NAME="frank">Франківський

<OPTION NAME="syh">Сихівський

<OPTION NAME="gal">Галицький

</SELECT>

Якщо замість <SELECT> записати <SELECT MULTIPLE>, користувач отримає можливість вибрати зі списку кілька варіантів. Атрибут SIZE=N тегу <SELECT> обмежує КІЛЬКІСТЬ показаних елементів списку числом N, після чого буде використано прокручування.

Кнопки

Заповнивши форму текстом та вибравши потрібні елементи керування, користувач повинен мати можливість підтвердити свої дії або скасувати помилково введені дані. Для підтвердження правильності введення використовують кнопку, яку створює тег <INPUT> з атрибутом TYPE="submit". На цій кнопці буде напис, заданий атрибутом VALUE. Аналогічно створюють кнопку скасування дії: атрибут TYPE у цьому випадку повинен мати значення r e s e t . Звичайна кнопка, з якою можна зв'язати будь-яку дію, має атрибут TYPE="button".

            <INPUT TYPE="submit" VALUE="Biдicлaти">

<INPUT TYPE="reset" VALUE="Оновити форму">

<INPUT TYPE="button" VALUE="Обчислити">

Для оригінального оформлення кнопки в неї можна вставити малюнок.

Для цього використовують такий синтаксис:

<INPUT TYPE="image" SRC="..."

WIDTH=... HEIGHT=... ALT="..." VALUE=...>

Надсилання форми

Отже, розробник веб-сторінки має змогу отримати відповіді користувача на поставлені запитання, не обмежуючись діалоговими вікнами методів Confirm та Prompt. Форми можна проектувати відповідно до своїх потреб, додавати до них зображення та інші елементи. Після заповнення форми користувач надсилає дані на подальше опрацювання.

Таблиці каскадних стилів і динамічні веб-сайти Включені в документ HTML елементи на зразок полів введення даних, перемикачів, прапорців та кнопок вміщують у тег форми <FORM>. . .</FORM>. Цей тег повинен мати певні атрибути, наприклад:

<FORM METHOD="post" ACTION="/bin/serv"

ENCTYPE="text/plain">

Атрибут METHOD може мати значення p o s t або g e t , які визначають різні методи передавання інформації з форми на URL-адресу сценарію-обробника, що зазначена в атрибуті ACTION. У свого провайдера потрібно уточнити, який із методів слід використовувати.

Необхідно також знати місце розташування доступних сценаріїв та їхні імена.

Дані форми можна пересилати на певну адресу електронної пошти, якщо задати атрибут ACTION=mailto:aflpeca_nomTM.

Атрибут ENCTYPE визначає, в який спосіб дані форми потрібно кодувати перед надсиланням на сервер. За умовчанням використовується кодування, під час якого символи замінюються комбінацією символу % та шістнадцяткового коду символу тексту в ASCII- таблиці. Щоб дані форми не перетворювати на шістнадцяткові числа, слід задавати значення t e x t / p l a i n .__

 

 

Виконати практичне завдання на створення форми:

<!DOCTYPE html>

<html>

<head>

                <title>Проста валідація</title>

</head>

<body>

<form>

                <fieldset>

                               <legend>Реєстрація</legend>

                               Введіть своє прізвище та ім'я <br>

                               <input type="text" name="firstname" required=""><br>

                               Ваш e-mail: <br>

                               <input type="Email" name="email" required=""> <br>

                               <input type="radio" name="gender" required=""> Чоловік <br>

                               <input type="radio" name="gender" required=""> Жінка <br>

                               Я погоджуюсь з умовами <br>

                               <input type="checkbox" name="terms" required=""> <br>

                               <input type="submit"value="Відправити">

 

                </fieldset>

</form>

</body>

</html>

Коментарі

Популярні дописи з цього блогу

Початок роботи на e-olimp

Майстер-клас у Скретч

Чудові списки