НАЙКРАЩИЙ САЙТ ДЛЯ ВЕБ-РОЗРОБНИКІВ

PHP Підручник

PHP СТАРТ PHP Інтро PHP Встановлення PHP Синтаксис PHP Коментарі PHP Змінні PHP Echo / Print PHP Типи даних PHP Рядки PHP Числа PHP Математика PHP Константи PHP Оператори PHP If...Else...Elseif PHP Switch PHP Цикли PHP Функції PHP Масиви PHP Суперглобали PHP RegEx

PHP Форми

PHP Обробка форми PHP Перевірка форми PHP Обов'язкові поля форми PHP Форма URL/E-mail PHP Заповнення форми

PHP Розширений

PHP Дата і час PHP Підключення файлів PHP Обробка файлів PHP Файл відкрити/читати PHP Файл створити/записати PHP Файл Завантажити PHP Кукі PHP Сесії PHP Фільтри PHP Розширені фільтри PHP Callback функції PHP JSON PHP Винятки

PHP ООП

PHP Що таке ООП PHP класи/об'єкти PHP Конструктор PHP Деструктор PHP Модифікатори доступу PHP Спадкування PHP Константи PHP Абстрактні класи PHP Інтерфейси PHP Трейти PHP Статичні методи PHP Статичні властивості PHP Простори імен PHP Ітерабелі

MySQL База даних

MySQL База даних MySQL Підключення MySQL Створити БД MySQL Створити таблиці MySQL Вставити дані MySQL Отримати останній ID MySQL Вставити кілька записів MySQL Підготовлені інструкції MySQL Вибрати дані MySQL Where MySQL Order By MySQL Видалення даних MySQL Оновлення даних MySQL Обмеження даних

PHP XML

PHP XML Парсери PHP SimpleXML Парсер PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX Інтро AJAX PHP AJAX База даних AJAX XML AJAX Живий пошук AJAX Опитування

PHP Приклади

PHP Приклади PHP Компілятор PHP Вікторина PHP Вправи PHP Сертифікат

PHP Довідник

PHP Огляд PHP Масив PHP Календар PHP Дата PHP Каталог PHP Помилка PHP Виняток PHP Файлова система PHP Фільтр PHP FTP PHP JSON PHP Ключові слова PHP Libxml PHP Пошта PHP Математика PHP Різне PHP MySQLi PHP Мережа PHP Output Control PHP RegEx PHP SimpleXML PHP Потік PHP Рядок PHP Обробка змінних PHP XML Парсер PHP Zip PHP Часові пояси

PHP. W3Schools українською. Уроки для початківців

En

PHP Обробка форми


PHP-суперглобали $_GET і $_POST використовуються для збору даних форми.


PHP - Проста HTML форма

У наведеному нижче прикладі показано просту HTML-форму з двома полями введення та кнопкою надсилання:

Приклад

<html>
<body>

<form action="welcome.html" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>
Виконати приклад »

Коли користувач заповнює форму вище та натискає кнопку "Надіслати", дані форми надсилаються для обробки у файл PHP під назвою "welcome.html". Дані форми надсилаються за допомогою методу HTTP POST.

Щоб відобразити подані дані, ви можете просто повторити всі змінні. Файл "welcome.html" виглядає так:

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php echo $_POST["email"]; ?>

</body>
</html>

Виведення може бути приблизно таким:

Привіт, John
Ваша email адреса john.doe@example.com

Такого ж результату можна досягти за допомогою методу HTTP GET:

Приклад

<html>
<body>

<form action="welcome_get.php" method="get">
Ім’я: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>
Виконати приклад »

та "welcome_get.php" виглядає так:

<html>
<body>

Привіт, <?php echo $_GET["name"]; ?><br>
Ваша email адреса: <?php echo $_GET["email"]; ?>

</body>
</html>

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

Думайте про БЕЗПЕКУ під час обробки PHP-форм!

Ця сторінка не містить жодної перевірки форми, вона лише показує, як ви можете надсилати та отримувати дані форми.

Однак на наступних сторінках буде показано, як обробляти форми PHP з урахуванням безпеки! Належна перевірка даних форми важлива для захисту вашої форми від хакерів і спамерів!


GET та POST

І GET, і POST створюють масив (наприклад, array( key1 => value1, key2 => value2, key3 => value3, ...)). Цей масив містить пари ключ/значення, де ключі – це імена елементів керування форми, а значення – це вхідні дані від користувача.

І GET, і POST розглядаються як $_GET і $_POST. Це суперглобали, що означає, що вони завжди доступні, незалежно від обсягу – і ви можете отримати до них доступ із будь-якої функції, класу чи файлу без необхідності робити щось особливе.

$_GET — це масив змінних, які передаються в поточний скрипт через параметри URL-адреси.

$_POST — це масив змінних, переданих у поточний скрипт за допомогою методу HTTP POST.


Коли використовувати GET?

Інформація, надіслана з форми за допомогою методу GET, видима всім (усі назви та значення змінних відображаються в URL-адресі). GET також має обмеження щодо обсягу інформації для надсилання. Обмеження становить близько 2000 символів. Однак, оскільки змінні відображаються в URL-адресі, можна додати сторінку до закладок. У деяких випадках це може бути корисним.

GET можна використовувати для надсилання неконфіденційних даних.

Примітка: GET НІКОЛИ не слід використовувати для надсилання паролів чи іншої конфіденційної інформації!


Коли використовувати POST?

Інформація, надіслана з форми за допомогою методу POST, невидима для інших (усі імена/значення вбудовано в тіло HTTP-запиту) і не має немає обмежень на кількість інформацію для надсилання.

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

Однак, оскільки змінні не відображаються в URL-адресі, неможливо додати сторінку до закладок.

Розробники віддають перевагу POST для надсилання даних форми.

Далі подивимося, як безпечно обробляти форми PHP!


PHP Вправи

Перевірте себе за допомогою вправ

Вправа:

Якщо форма в білому розділі нижче надсилається, як ви можете в Welcome.html вивести значення з поля "name" (ім’я)?

<form action="welcome.php" method="get"> First name: <input type="text" name="fname"> </form>
<html> <body> Welcome <?php echo ; ?> </body> </html>