Створення HTML форм. HTML форми Html form post приклади
Форми призначені для пересилання даних від користувача до веб-сервера. Форми в HTML можуть складатися з текстових полів і текстових областей, прапорців і перемикачів, а також списків, що розкриваються. Все це - елементи форми. Кожен елемент служить для того, щоб передати якесь значення сайту.
За своєю суттю HTML-форма - це веб-сторінка на якій ви бачите області для введення своєї інформації. Після того, як ви заповните форму і натиснете кнопку відправити, інформація з форми упаковується і відсилається веб-сервера для обробки серверним сценарієм (файлом-обробником). Після обробки до вас повертається в якості відповіді інша веб-сторінка. Наступний малюнок наочно демонструє як працює форма:
Немає нічого складного в створенні HTML-форм. Найпростіший спосіб отримати уявлення про форми - це розібрати невеликий HTML-код, а потім подивитися, як він працює. У наступному прикладі показаний синтаксис створення простої HTML-форми:
Приклад: Проста HTML-форма
- Спробуй сам »
Моя перша форма:
ім'я:
Прізвище:
елемент
Форми вставляються на веб-сторінки за допомогою елемента . Він являє собою контейнер для всього вмісту форми, включаючи такі елементи, як текстові поля і кнопки, а також будь-які інші теги мови HTML. Однак він не може містити в собі інший елемент
.
Для відправки форми на сервер використовується кнопка «Submit», того ж результат вийде, якщо натиснути клавішу «Enter» в межах форми. Якщо кнопка «Submit» відсутня в формі, клавіша «Enter» може бути використана для відправки.
Більшість атрибутів елемента впливають на обробку форми, а не на її дизайн. Найбільш поширеними з яких є action і method. Атрибут action містить URL, на який інформація у формі буде відправлена \u200b\u200bдля обробки сервером. Атрибут method є методом HTTP, який повинні використовувати браузери для відправки даних форми.
елемент
Практично всі поля для форми створюється за допомогою елементу (Від англ. Input - введення). Зовнішній вигляд елемента змінюються в залежності від значення його атрибуту type:
Ось деякі значення атрибута type:
Введення тексту і пароля
Одним з найпростіших типів елементів форми є текстове поле, призначене для введення тексту з одного рядка. Даний тип введення тексту встановлений за замовчуванням, а отже, саме однорядкове поле відобразиться, якщо ви забудете вказати атрибут type. Для додавання однострочного поля введення тексту в форму слід всередині елемента прописати атрибут type зі значенням text:
Поле введення пароля є різновидом звичайного текстового поля. Воно підтримує ті ж атрибути, що і однорядкове текстове поле. Атрибут name встановлює ім'я поля введення пароля, яке буде відправлено на сервер разом з паролем, введеним користувачем. Щоб створити поле для введення пароля, необхідно задати значення password атрибуту type (Password (англ.) - пароль):
Приклад створення форми з полем для введення пароля:
Приклад: Поле введення пароля
- Спробуй сам »
Ваш логін:
пароль:
Разом з цим атрибутом можна використовувати атрибут maxlenght, Значення якого визначає максимальну кількість символів, які можна ввести до цього рядка. Можна також задати довжину поля введення, використовуючи атрибут size. За замовчуванням, в більшості браузерів ширина текстового поля обмежена 20 символами. Для управління шириною елементів нових форм, замість атрибута size, Рекомендується використовувати засоби каскадних таблиць стилів (CSS).
Атрибут value задає значення, яке за замовчуванням відображається в текстовому полі в момент завантаження форми. Ввівши в поле значення за замовчуванням, можна пояснити користувачеві, які саме дані і в якому форматі ви хочете, щоб користувач сюди заніс. Це як зразок, адже користувачеві набагато зручніше заповнювати форму, бачачи перед собою приклад.
Перемикачі (radio)
елемент типу radio створює перемикачі, які використовують принцип логічного «АБО», дозволяючи вибрати тільки одне з декількох значень: якщо ви вибираєте одне положення, то всі інші стають неактивними. Основний синтаксис елемента-перемикача:
Атрибут name для перемикачів обов'язковий і грає важливу роль в об'єднанні кількох елементів-перемикачів в групу. Для об'єднання перемикачів в групу необхідно встановити однакове значення атрибуту name і різне значення атрибута value. Атрибут vаluе встановлює значення обраного перемикача, яке буде відправлено сервера. Значення кожного елемента-перемикача має бути унікальним всередині групи, для того, щоб сервер знав, який варіант відповіді вибрав користувач.
наявність атрибута checked (З англ. - встановлено) у елемента-перемикача вказує на те, який з пропонованих варіантів повинен бути обраний за замовчуванням при завантаженні сторінки, якщо це необхідно. Даний атрибут може бути встановлений тільки у одного елемента-перемикача з групи:
- Спробуй сам »
Скільки вам років?
- молодше 18
- від 18 до 24
- від 25 до 35
- більше 35
Атрибут action.
Головним для елемента є атрибут action, Який вказує обробник даних для форми. Оброблювач даних - це файл, що описує, що потрібно робити з даними форми. Як результат цієї обробки видається нова HTML-сторінка, яка повертається браузеру. Іншими словами в атрибуті action вказується URL-шлях до файлу-обробника на сервері (іноді званого сторінкою сценарію) для обробки форми. Синтаксис наступний:
Файл обробки знаходиться на сервері mytestserver.com в папці namefolder і назва серверного сценарію, який буде обробляти дані - obrabotchik.php. Саме йому і будуть передані всі дані, введені вами в форму на веб-сторінці. Расшіреніе.php вказує на те, що зазначена форма обробляється сценарієм написаному на мові PHР. Сам обробник може бути написаний на іншій мові, наприклад це може бути мова сценаріїв Python, Ruby і ін.
Бажано завжди задавати значення атрибута action. Якщо форма повинна передати значення на ту ж сторінку, де вона розташована в якості значення атрибута action вкажіть порожній рядок: action \u003d "".
Атрибут method
Атрибут method задає те, яким чином інформація повинна бути передана на сервер. Вибір методу відправки форми залежить від даних, які необхідно відправити разом з нею. Тут основну роль відіграє обсяг цих даних. Найбільш популярними є два методи передачі вихідних даних вашої форми з браузера на сервер: GET і POST. Метод встановлюється будь на вибір, і якщо ви його не вказали, за замовчуванням буде використовуватися GET. Розглянемо застосування кожного з них.
метод POST
метод POST упаковує дані форми і відсилає їх сервера непомітно для користувача, оскільки дані містяться в тексті листа. Веб-браузер, при використанні методу POST відправляє на сервер запит, що складається зі спеціальних заголовків за якими слідують дані форми. Так як вміст цього запиту є тільки сервера, метод POST застосовується для передачі конфіденційних даних, таких як паролі, реквізити банківських карт і інша персональна інформація користувачів. метод POST також підходить для відправки великих обсягів інформації, так як на відміну від методу GET, У нього немає обмежень по кількості переданих символів.
метод GET
Як ви вже знаєте основна робота браузера - це отримувати веб-сторінки від сервера. Так ось, коли ви використовуєте метод GET, Ваш браузер просто отримує веб-сторінку, як робить це завжди. метод GET також упаковує дані форми, але, перш ніж відправити запит серверу, приєднує їх в кінець URL-адреси. Щоб зрозуміти, як працює метод GET, Давайте подивимося його в дії. Відкрийте в блокноті (наприклад Notepad ++) перший приклад з цього уроку (Приклад: Проста HTML-форма) і внесіть в HTML-код невелика зміна: