$_GET – используется для доступа к данным, переданным методом GET.
Пример:
$name = $_GET['name'];
$_POST – используется для доступа к данным, переданным методом POST.
Пример:
$name = $_POST['name'];
3.2 Обработка данных
Валидация и фильтрация данных
Валидация данных – это процесс проверки данных на соответствие определённым требованиям (например, проверка, что введённый email имеет правильный формат).
Фильтрация данных – это процесс изменения или удаления нежелательных символов из данных (например, удаление лишних пробелов).
В PHP для валидации и фильтрации данных существуют встроенные функции:
filter_var() – используется для фильтрации и валидации данных.
Пример валидации email:
$email = "user@example.com";
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Email is valid!";
} else {
echo "Invalid email!";
}
filter_input() – используется для фильтрации данных из суперглобальных массивов.
Пример:
$name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING);
Что такое SQL-инъекция?
SQL-инъекция – это тип атаки, при которой злоумышленник вставляет или «вставляет» произвольный SQL-код в запросы к базе данных с целью его выполнения. Это может привести к утечке, модификации или уничтожению данных.
Защита от XSS и SQL-инъекций
XSS (Cross-Site Scripting) – это атака, при которой вредоносный скрипт внедряется на веб-страницу с целью выполнения в браузере пользователя. Чтобы предотвратить XSS-атаки, необходимо использовать функции экранирования вывода, такие как htmlspecialchars().
Пример:
echo htmlspecialchars($user_input);