Урок 8: Формы в HTML и их обработка на PHP

При создании динамичных веб-сайтов важно уметь взаимодействовать с пользователем — принимать от него информацию, обрабатывать её и возвращать результат. Самый распространённый способ получить данные от пользователя — это HTML-форма. С её помощью можно отправить текст, выбрать опции, отправить файлы и многое другое.

В этом уроке мы рассмотрим, как создавать формы с помощью HTML и как обрабатывать введённые данные на стороне сервера с помощью языка PHP.

 

Что такое HTML-форма?

HTML-форма — это структура на веб-странице, предназначенная для ввода данных пользователем. Простейшая форма включает в себя поля ввода, кнопки, переключатели и флажки.

Пример формы:

<form action="process.php" method="post">

    <label>Ваше имя:</label>

    <input type="text" name="name">

    <br>

    <label>Ваш e-mail:</label>

    <input type="email" name="email">

    <br>

    <input type="submit" value="Отправить">

</form>

Ключевые атрибуты формы:

  • action — указывает, на какой файл будут отправлены данные (обычно файл PHP);
  • method — определяет способ отправки: post или get.

 

Отличие между GET и POST

Метод

Особенности

GET

Данные видны в URL. Подходит для поиска, фильтрации. Ограничение по длине.

POST

Данные скрыты от пользователя. Подходит для отправки форм с конфиденциальной информацией.

 

Обработка данных в PHP

Чтобы получить данные, отправленные через форму, в PHP используются суперглобальные массивы:

  • $_GET — для данных, отправленных методом GET;
  • $_POST — для данных, отправленных методом POST.

Пример обработки:

<?php

if ($_SERVER["REQUEST_METHOD"] === "POST") {

    $name = $_POST["name"];

    $email = $_POST["email"];

 

    echo "Привет, $name!<br>";

    echo "Мы отправим письмо на адрес: $email";

}

?>

Важно! Перед использованием данных, полученных от пользователя, их необходимо проверять и очищать, чтобы избежать уязвимостей, таких как XSS или SQL-инъекции.

 

Чтобы опробовать примеры из данного урока, вам нужно открыть редактор кода, или IDE. Например: Visual Studio Code с установленными пакетами Live Server, PHP Intelephense, PHP Server. В прочем вы сами решаете, где будете писать свой код.

 

Проверка и очистка данных

Для безопасности стоит использовать функции:

$name = htmlspecialchars(trim($_POST["name"]));

$email = htmlspecialchars(trim($_POST["email"]));

Функция trim() — удаляет пробелы по краям.

Функция htmlspecialchars() — преобразует специальные символы в безопасные HTML-сущности.

 

Полезные элементы форм

  1. Пароль:

         <input type="password" name="password">

   2. Флажок:

         <input type="checkbox" name="subscribe"  value="yes"> Подписаться

   3. Переключатели (radio):

        <input type="radio" name="gender" value="male"> Мужской

        <input type="radio" name="gender" value="female"> Женский

    4. Выпадающий список:

         <select name="country">

                 <option value="ru">Россия</option>

                 <option value="us">США</option>

         </select>

 

Отправка формы на ту же страницу

Иногда удобно обрабатывать форму в том же файле. В этом случае action можно указать так:

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">

 

В этом уроке мы узнали, как с помощью HTML создавать формы для ввода данных и как с помощью PHP эти данные принимать и обрабатывать. Это один из ключевых навыков для создания интерактивных веб-приложений.

Вы теперь умеете:

  • создавать HTML-формы;
  • использовать методы GET и POST;
  • получать и очищать данные на сервере;
  • выводить результаты пользователю.

На следующем уроке мы поговорим о комментариях в коде, чтобы понять в каких целях их применяют.

Лого

Spartacus_85 [Admin]

Администратор сайта — это специалист, который отвечает за техническую поддержку и бесперебойную работу веб-ресурса.



0 Комментарий(я)

Зарегистрируйтесь чтобы оставить комментарий