LibCode
Темы
6 ответов
1 ответ
2 ответа
3 ответа
4 ответа
Блог :: Вчера, 6:00 pm
Онлайн-исполнитель PHP-кода — это очень полезный инструмент, который может привлечь разработчиков и студентов. Давай подробно рассмотрим, как реализовать подобный сервис.
Безопасность
Используем sandbox-окружение для выполнения кода. Можно ограничить доступ к опасным функциям с помощью отключения опасных функций в PHP:
Интерфейс
Простой HTML-интерфейс для ввода и вывода:
...
План действий
- Безопасность: Прежде всего, нужно обеспечить безопасность выполнения пользовательского кода. Нельзя разрешать прямой доступ к системным функциям и запретить опасные операции.
- Интерфейс: Нужно спроектировать простой и удобный интерфейс для ввода кода и вывода результата.
- Обработка кода: После ввода кода пользовательский PHP-код будет отправлен на сервер для выполнения.
- Вывод результата: Результат выполнения кода будет показан пользователю в удобном виде.
Пример реализации
Безопасность
Используем sandbox-окружение для выполнения кода. Можно ограничить доступ к опасным функциям с помощью отключения опасных функций в PHP:
ВыделитьPHP
// Устанавливаем ограничения для безопасности
ini_set('disable_functions', 'exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source');
ini_set('memory_limit', '64M');
ini_set('max_execution_time', '30');Интерфейс
Простой HTML-интерфейс для ввода и вывода:
ВыделитьHTML | PHP
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Online PHP Execution</title>
</head>
<body>
<h1>PHP Executor</h1>
<form method="post">
<textarea name="code" rows="10" cols="50"><?php echo isset($_POST['code']) ? htmlspecialchars($_POST['code']) : ""; ?></textarea>
<br>
<input- Жалоба
Блог :: Вчера, 5:39 pm
Что мы узнали:
Теперь, когда ты овладел основами PHP, ты можешь двигаться дальше и углубляться в изучение более сложных тем:
Создай небольшой проект на PHP, который включает в себя работу с формами, базой данных и сеансами. Это поможет закрепить полученные знания и подготовиться к следующему уровню.
На этом пятнадцатый урок завершён. Мы прошлись по основным темам PHP и подготовили почву для дальнейшего развития.
- Основы синтаксиса и переменные
- Ветвление и условия
- Циклы и массивы
- Функции
- Объектно-ориентированное программирование
- Сессии и Cookie
- Обработка форм и защита от атак
- Работа с файлами и каталогами
- Обработка ошибок и отладка
- Веб-сервисы и API
- Оптимизация и кэширование
- Работа с почтой и уведомлениями
- Тестирование и юнит-тесты
Что дальше?
Теперь, когда ты овладел основами PHP, ты можешь двигаться дальше и углубляться в изучение более сложных тем:
- Фреймворки: Изучи популярные фреймворки, такие как Laravel, Symfony или Yii, чтобы создавать более крупные и сложные веб-приложения.
- Базы данных: Углуби свои знания в работе с базами данных, изучив MySQL, PostgreSQL или MongoDB.
- AJAX и JavaScript: Освой асинхронные запросы и взаимодействие с сервером через JavaScript, чтобы создавать динамические веб-приложения.
- SEO и оптимизация: Узнай, как оптимизировать свои веб-приложения для поисковых систем и улучшения производительности.
- Безопасность: Глубоко изучи вопросы безопасности, такие как предотвращение SQL-инъекций, XSS-атак и CSRF.
Практическое задание
Создай небольшой проект на PHP, который включает в себя работу с формами, базой данных и сеансами. Это поможет закрепить полученные знания и подготовиться к следующему уровню.
На этом пятнадцатый урок завершён. Мы прошлись по основным темам PHP и подготовили почву для дальнейшего развития.
Блог :: Вчера, 5:22 pm
На PHP создать QR-код можно с помощью нескольких библиотек. Одна из самых популярных и простых в использовании — это PHP QR Code.
Загрузка библиотеки
Библиотеку можно скачать с GitHub или установить через Composer.
Установка через Composer
Создадим простой QR-код, который будет содержать текст "Привет, мир!".
Подключение библиотеки
Генерация QR-кода
Теперь у тебя есть QR-код, сохранённый в файле
Как установить и использовать PHP QR Code
Загрузка библиотеки
Библиотеку можно скачать с GitHub или установить через Composer.
Установка через Composer
ВыделитьBash
composer require spomky-labs/php-qrcodeПример использования
Создадим простой QR-код, который будет содержать текст "Привет, мир!".
Подключение библиотеки
ВыделитьPHP
use SpomkyLabs\QrCode\QrCodeGenerator;Генерация QR-кода
ВыделитьPHP
// Текст, который будет закодирован в QR-коде
$text = "Привет, мир!";
// Уровень коррекции ошибок (Q — высокий уровень надежности)
$correctionLevel = QrCodeGenerator::ERROR_CORRECT_LEVEL_Q;
// Размер пикселей (чем больше число, тем крупнее QR-код)
$pixelPerModule = 4;
// Пустое пространство вокруг QR-кода
$margin = 2;
// Цвет фона (FFFFFF — белый)
$backgroundColor = 'FFFFFF';
// Цвет штриховки (000000 — черный)
$foregroundColor = '000000';
// Генерируем QR-код
$qrCode = QrCodeGenerator::create($text)
->setErrorCorrectionLevel($correctionLevel)
->setPixelPerModule($pixelPerModule)
->setMargin($margin)
->setForegroundColor($foregroundColor)
->setBackgroundColor($backgroundColor);
// Сохраняем QR-код в файл
$qrCode->writeFile(__DIR__ . '/qr_code.png');Теперь у тебя есть QR-код, сохранённый в файле
qr_code.png. Ты можешь использовать этот код в своих проектах для создания QR-кодов для URL, номеров телефонов, банковских...
Блог :: Вчера, 6:18 am
Что мы узнаем:
Тестирование — это процесс проверки правильности работы программного продукта. Юнит-тесты — это разновидность тестирования, при которой проверяется работоспособность отдельных единиц кода (модулей, функций, классов).
Наиболее популярным инструментом для юнит-тестирования в PHP является PHPUnit. Пример теста:
PHPUnit можно установить через Composer и запустить тесты из командной строки:
Создайте PHP-класс и напишите юнит-тесты для его методов.
На этом четырнадцатый урок завершён. Мы изучили тестирование и юнит-тесты, что позволит нам создавать более надёжные и стабильные веб-приложения. В пятнадцатом уроке мы подведём итоги и рассмотрим дальнейшие шаги.
- Что такое тестирование и юнит-тесты.
- Как создавать и запускать юнит-тесты в PHP.
- Примеры использования PHPUnit.
Что такое тестирование и юнит-тесты?
Тестирование — это процесс проверки правильности работы программного продукта. Юнит-тесты — это разновидность тестирования, при которой проверяется работоспособность отдельных единиц кода (модулей, функций, классов).
Создание юнит-тестов в PHP
Наиболее популярным инструментом для юнит-тестирования в PHP является PHPUnit. Пример теста:
ВыделитьPHP
// Тестируемый класс
class MathOperations
{
public function sum($a, $b)
{
return $a + $b;
}
}
// Тестовый класс
class MathOperationsTest extends PHPUnit\Framework\TestCase
{
public function testSum()
{
$math = new MathOperations();
$result = $math->sum(2, 3);
$this->assertEquals(5, $result);
}
}Запуск тестов
PHPUnit можно установить через Composer и запустить тесты из командной строки:
ВыделитьPHP
composer require --dev phpunit/phpunit
vendor/bin/phpunit testsПрактическое задание
Создайте PHP-класс и напишите юнит-тесты для его методов.
На этом четырнадцатый урок завершён. Мы изучили тестирование и юнит-тесты, что позволит нам создавать более надёжные и стабильные веб-приложения. В пятнадцатом уроке мы подведём итоги и рассмотрим дальнейшие шаги.
Блог :: 23.11.2025 05:45:40 pm
В PHP предусмотрены так называемые магические методы, которые автоматически вызываются при выполнении определённых операций. Одним из таких методов является
Метод __isset() вызывается автоматически, когда используется функция
Синтаксис:
Параметры:
Возвращаемое значение:
Рассмотрим простой класс с методом
...
__isset(). Он позволяет перехватывать вызовы функции isset() для проверки существования и доступности свойств объекта.Что делает метод __isset()?
Метод __isset() вызывается автоматически, когда используется функция
isset() для проверки существования свойства объекта. Это позволяет управлять поведением проверки свойств, например, если свойство динамически формируется или вычисляется.Синтаксис:
ВыделитьСинтаксис: __isset()
public function __isset(string $property): boolПараметры:
$property: Имя проверяемого свойства.
Возвращаемое значение:
- Булево значение (
trueилиfalse), указывающее, существует ли свойство и доступно ли оно.
Пример использования
Рассмотрим простой класс с методом
__isset():
ВыделитьPHP
class DynamicProperties
{
protected $properties = [];
public function __set($name, $value)
{
$this->properties[$name] = $value;
}
public function __get($name)
{
return $this->properties[$name] ?? null;
}
public function __isset($name)
{
return isset($this->properties[$name]);
}
}
// Использование
$obj = new DynamicProperties();
$obj->name = "Иван";
echo isset($obj->name) ? "Свойство name существует" : "Свойство name не существует"; // Вывод: Свойство name существует
echo isset($obj->age) ? "Свойство age существует" :
Блог :: 23.11.2025 02:20:06 pm
В PHP предусмотрены так называемые магические методы, которые автоматически вызываются при выполнении определённых операций. Одним из таких методов является __construct(). Он называется конструктором класса и вызывается автоматически при создании объекта.
Метод __construct() используется для инициализации объекта. Обычно в нём устанавливаются начальные значения свойств, создаются необходимые ресурсы или выполняются другие подготовительные действия.
Синтаксис:
Параметры:
Возвращаемое значение:
Рассмотрим простой класс с конструктором:
Метод
Что делает метод __construct()?
Метод __construct() используется для инициализации объекта. Обычно в нём устанавливаются начальные значения свойств, создаются необходимые ресурсы или выполняются другие подготовительные действия.
Синтаксис:
ВыделитьСинтаксис: __construct()
public function __construct([$parameter])Параметры:
$parameter: Дополнительные параметры, которые могут передаваться при создании объекта.
Возвращаемое значение:
- Никакое значение не возвращается.
Пример использования
Рассмотрим простой класс с конструктором:
ВыделитьPHP
class Person
{
public $name;
public $age;
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
public function greet()
{
return "Привет, меня зовут $this->name, мне $this->age лет.";
}
}
// Использование
$person = new Person("Иван", 30);
echo $person->greet(); // Вывод: Привет, меня зовут Иван, мне 30 лет.Применение
Метод
__construct() часто используется для:
- Инициализации свойств объекта.
- Подключения к базам данных или другим ресурсам.
- Конфигурации объекта при создании.
Важные моменты
- Имя метода: Обязательно должно называться __construct().
- Доступность: Должен быть объявлен как публичный
Блог :: 23.11.2025 01:29:51 pm
В PHP предусмотрен мощный механизм автозагрузки классов через функцию
Функция
Синтаксис:
Параметры:
Возвращаемое значение:
Рассмотрим простой пример автоматической загрузки классов с помощью
spl_autoload_register(). Эта функция позволяет зарегистрировать одну или несколько функций автозагрузки, которые будут автоматически вызываться при попытке использования неопределяемого класса.Что делает spl_autoload_register()?
Функция
spl_autoload_register() регистрирует функцию, которая будет вызвана, когда PHP встречает вызов неопределённого класса. Это позволяет автоматически загружать классы из файлов по мере необходимости, без необходимости вручную подключать их через include или require.Синтаксис:
ВыделитьСинтаксис: spl_autoload_register()
void spl_autoload_register(callable $callback[, bool $throw = true[, bool $prepend = false]])Параметры:
$callback: Имя функции или анонимная функция, которая будет вызываться для загрузки класса.$throw: Если true, генерирует исключение при невозможности зарегистрировать функцию.$prepend: Если true, новая функция добавляется в начало очереди автозагрузки.
Возвращаемое значение:
- Функция не возвращает значений.
Пример использования
Рассмотрим простой пример автоматической загрузки классов с помощью
spl_autoload_register():
ВыделитьPHP
// Файл Person.php
class Person
{
public function greet(): string
{
return "Привет!";
}
}
// Главный файл
spl_autoload_register(function($className) {
$filename = $className . '.php';
include $filename;
});
// Использование
$person = new Person();
echo $person->greet(); // Вывод: Привет!Примене
...
Блог :: 23.11.2025 07:36:23 am
В PHP предусмотрены так называемые магические методы, которые автоматически вызываются при выполнении определённых операций. Одним из таких методов является __call(). Он позволяет перехватывать вызовы несуществующих методов класса и обрабатывать их.
Метод
Синтаксис:
Параметры:
Возвращаемое значение:
Рассмотрим простой класс с методом __call(), который перехватывает вызовы несуществующих методов:
Метод
Что делает метод __call()?
Метод
__call() вызывается автоматически, когда происходит вызов метода, который не объявлен в классе. Это даёт возможность:
- Управлять поведением при вызове несуществующих методов.
- Осуществлять делегирование вызовов другим методам или объектам.
- Контролировать логику обращения к динамическим методам.
Синтаксис:
ВыделитьСинтаксис: __call()
public function __call(string $method, array $arguments): mixedПараметры:
$method: Имя вызываемого метода.$arguments: Массив аргументов, переданных в метод.
Возвращаемое значение:
- Любое значение, которое требуется вернуть вызывающей стороне.
Пример использования
Рассмотрим простой класс с методом __call(), который перехватывает вызовы несуществующих методов:
ВыделитьPHP
class Calculator
{
public function add(int $a, int $b): int
{
return $a + $b;
}
public function __call(string $method, array $arguments): void
{
echo "Метод $method не найден. Аргументы: " . implode(', ', $arguments) . "\n";
}
}
// Использование
$calculator = new Calculator();
echo $calculator->add(2, 3); // Вывод: 5
$calculator->subtract(5, 2); // Вывод: Метод subtract не найден. Аргументы: 5, 2Применение
Метод
__call() часто используется для:
- Реализации
Блог :: 23.11.2025 06:32:38 am
Что мы узнаем:
В PHP для отправки писем используется функция
Для безопасной отправки писем рекомендуется использовать SMTP. Пример с библиотекой PHPMailer:
Прикрепить файл к письму можно с помощью PHPMailer:
...
- Как отправлять электронные письма с помощью PHP.
- Использование SMTP для безопасной отправки писем.
- Примеры отправки писем с прикрепленными файлами.
Отправка электронных писем
В PHP для отправки писем используется функция
mail(). Пример:
ВыделитьPHP
// Отправка простого письма
$to = "recipient@example.com";
$subject = "Тема письма";
$message = "Привет! Это письмо отправлено с помощью PHP.";
mail($to, $subject, $message);Использование SMTP
Для безопасной отправки писем рекомендуется использовать SMTP. Пример с библиотекой PHPMailer:
ВыделитьPHP
// Подключение библиотеки PHPMailer
require 'PHPMailer/src/PHPMailer.php';
require 'PHPMailer/src/SMTP.php';
// Создание объекта PHPMailer
$mail = new PHPMailer(true);
try {
// Настройки SMTP
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'sender@example.com';
$mail->Password = 'password';
$mail->Port = 587;
// Отправка письма
$mail->setFrom('sender@example.com', 'Sender Name');
$mail->addAddress('recipient@example.com', 'Recipient Name');
$mail->Subject = 'Тема письма';
$mail->Body = 'Привет! Это письмо отправлено с помощью PHPMailer.';
$mail->send();
echo 'Письмо отправлено!';
} catch (Exception $e) {
echo 'Ошибка: ' . $mail->ErrorInfo;
}Прикрепление файлов
Прикрепить файл к письму можно с помощью PHPMailer:
ВыделитьPHP
// Прикрепление файла
$mail->addAttachment('path/to/file.pdf',
Блог :: 22.11.2025 06:54:32 am
Что мы узнаем:
Оптимизация — это процесс улучшения производительности и скорости работы приложения. Цель оптимизации — снизить нагрузку на сервер и увеличить скорость отклика.
Кэширование — это временное хранение данных для уменьшения нагрузки на сервер. Основные виды кэширования:
Файловое кэширование: Хранение данных в файлах на диске:
Memcached: Кэширование в оперативной памяти:
- Как ускорить работу PHP-приложений.
- Использование кэширования для повышения производительности.
- Примеры оптимизации и кэширования.
Что такое оптимизация?
Оптимизация — это процесс улучшения производительности и скорости работы приложения. Цель оптимизации — снизить нагрузку на сервер и увеличить скорость отклика.
Основные приёмы оптимизации
- Минификация и сжатие: Минифицируйте CSS, JavaScript и HTML, сжимайте изображения.
- Использование CDN: Распределяйте статические ресурсы через Content Delivery Network.
- Оптимизация базы данных: Индексация, денормализация, кэширование запросов.
- Отложенная загрузка: Используйте lazy loading для изображений и тяжелых компонентов.
Кэширование в PHP
Кэширование — это временное хранение данных для уменьшения нагрузки на сервер. Основные виды кэширования:
Файловое кэширование: Хранение данных в файлах на диске:
ВыделитьPHP
// Файловое кэширование
$cache_file = 'cache/data.cache';
if (file_exists($cache_file) && (time() - filemtime($cache_file) < 3600)) {
$data = unserialize(file_get_contents($cache_file));
} else {
// Генерация данных
$data = get_data_from_db();
file_put_contents($cache_file, serialize($data));
}Memcached: Кэширование в оперативной памяти:
ВыделитьPHP
// Memcached
$memcached = new Memcached();
$memcached->addServer('localhost', 11211);
if (($data = $memcached->get('my_data')) === false) {
// Генерация данных
$data = get_data_from_db();
$memcached->set('my_data', $data, 3600);
}Прак
...
Блог :: 21.11.2025 07:25:20 pm
Что мы узнаем:
Веб-сервисы — это программы, предоставляемые через Интернет для использования другими приложениями. API (Application Programming Interface) — это интерфейс, позволяющий взаимодействовать с веб-сервисом.
Пример простого API, возвращающего список пользователей:
Пример использования API с помощью cURL:
Создайте PHP-скрипт, который возвращает список товаров в формате JSON.
На этом одиннадцатый урок завершён. Мы изучили основы работы с веб-сервисами и API, что позволит нам создавать более функциональные и гибкие веб-приложения. В...
- Что такое веб-сервисы и API.
- Как создавать и использовать API в PHP.
- Примеры использования API.
Что такое веб-сервисы и API?
Веб-сервисы — это программы, предоставляемые через Интернет для использования другими приложениями. API (Application Programming Interface) — это интерфейс, позволяющий взаимодействовать с веб-сервисом.
Создание простейшего API на PHP
Пример простого API, возвращающего список пользователей:
ВыделитьPHP
<?php
// Подключение к базе данных
$mysqli = new mysqli("localhost", "user", "password", "database");
// Получение данных
$sql = "SELECT * FROM users";
$result = $mysqli->query($sql);
// Формирование ответа
$users = [];
while ($row = $result->fetch_assoc()) {
$users[] = $row;
}
// Вывод в формате JSON
header('Content-Type: application/json');
echo json_encode(['users' => $users]);Использование API
Пример использования API с помощью cURL:
ВыделитьPHP
<?php
// URL API
$url = 'https://danfa.net/api/';
// Инициализация cURL
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
// Выполнение запроса
$response = curl_exec($curl);
// Обработка ответа
$data = json_decode($response, true);
// Вывод данных
print_r($data);Практическое задание
Создайте PHP-скрипт, который возвращает список товаров в формате JSON.
На этом одиннадцатый урок завершён. Мы изучили основы работы с веб-сервисами и API, что позволит нам создавать более функциональные и гибкие веб-приложения. В...
Блог :: 21.11.2025 07:23:18 am
Что мы узнаем:
PHP предоставляет несколько механизмов для обработки ошибок:
Функция trigger_error()
Используется для генерации пользовательских предупреждений и ошибок:
Функция set_error_handler()
Позволяет зарегистрировать пользовательскую функцию для обработки ошибок:
Для отладки и отслеживания ошибок в PHP можно использовать
Функция debug_backtrace()
Возвращает массив с информацией о вызовах функций:
Функция error_log()
Записывает сообщение об ошибке в журнал:
Создайте PHP-скрипт, который регистрирует пользовательскую функцию для обработки ошибок и выводит информацию о вызванных функциях.
На этом десятый урок завершён. Мы изучили обработку ошибок и отладку, что позволит нам создавать более стабильные и надёжные веб-приложения. В одиннадцатом уроке мы познакомимся с веб-сервисами и API.
- Как ловить и обрабатывать ошибки в PHP.
- Принципы отладки и трассировки ошибок.
- Использование функций для работы с ошибками.
Обработка ошибок
PHP предоставляет несколько механизмов для обработки ошибок:
Функция trigger_error()
Используется для генерации пользовательских предупреждений и ошибок:
ВыделитьPHP
trigger_error("Ошибка обработки данных.", E_USER_WARNING);Функция set_error_handler()
Позволяет зарегистрировать пользовательскую функцию для обработки ошибок:
ВыделитьPHP
function customErrorHandler($errno, $errstr) {
echo "Ошибка: $errstr";
}
set_error_handler("customErrorHandler");Отладка и трассировка ошибок
Для отладки и отслеживания ошибок в PHP можно использовать
Функция debug_backtrace()
Возвращает массив с информацией о вызовах функций:
ВыделитьPHP
$backtrace = debug_backtrace();
print_r($backtrace);Функция error_log()
Записывает сообщение об ошибке в журнал:
ВыделитьPHP
error_log("Ошибка: Невозможно выполнить запрос.");Практическое задание
Создайте PHP-скрипт, который регистрирует пользовательскую функцию для обработки ошибок и выводит информацию о вызванных функциях.
На этом десятый урок завершён. Мы изучили обработку ошибок и отладку, что позволит нам создавать более стабильные и надёжные веб-приложения. В одиннадцатом уроке мы познакомимся с веб-сервисами и API.
Блог :: 20.11.2025 06:40:57 am
Что мы узнаем:
Функция
Функция
Функция
Функция
Функция
Создайте PHP-скрипт, который читает содержимое файла и выводит его на экран.
На этом девятый урок завершён. Мы изучили работу с файлами и каталогами, что позволит нам создавать более сложные и многофункциональные веб-приложения. В десятом уроке мы познакомимся с обработкой ошибок и отладкой.
- Как читать и записывать файлы.
- Как работать с каталогами.
- Примеры использования функций для работы с файлами.
Чтение файла
Функция
file_get_contents() позволяет прочитать содержимое файла в строку. Пример:
ВыделитьPHP
// Чтение файла
$fileContent = file_get_contents('example.txt');
echo $fileContent;Запись в файл
Функция
file_put_contents() позволяет записать данные в файл. Пример:
ВыделитьPHP
// Запись в файл
$fileContent = "Привет, мир!";
file_put_contents('example.txt', $fileContent);Работа с каталогами
Функция
scandir() позволяет получить список файлов и каталогов в директории. Пример:
ВыделитьPHP
// Получение списка файлов в каталоге
$files = scandir('.');
print_r($files);Создание каталога
Функция
mkdir() позволяет создать новый каталог. Пример:
ВыделитьPHP
// Создание каталога
mkdir('new_folder');Удаление файла
Функция
unlink() позволяет удалить файл. Пример:
ВыделитьPHP
// Удаление файла
unlink('example.txt');Практическое задание
Создайте PHP-скрипт, который читает содержимое файла и выводит его на экран.
На этом девятый урок завершён. Мы изучили работу с файлами и каталогами, что позволит нам создавать более сложные и многофункциональные веб-приложения. В десятом уроке мы познакомимся с обработкой ошибок и отладкой.
Блог :: 19.11.2025 06:06:18 pm
Что мы узнаем:
Когда пользователь отправляет данные через форму, они попадают в суперглобальные массивы
SQL-инъекции — это атаки, при которых злоумышленник пытается выполнить вредоносный SQL-код через форму. Для защиты от них рекомендуется использовать подготовленные выражения (prepared statements).
Пример с подготовленным выражением:
XSS (Cross-Site Scripting) — это атака, при которой злоумышленник вставляет вредоносный JavaScript-код в страницу. Для защиты от них рекомендуется фильтровать и очищать данные.
Пример очистки данных:
Создайте PHP-скрипт, который принимает данные из формы и сохраняет их в базе данных, защитившись от SQL-инъекций и XSS-атак.
На этом восьмой урок завершён. Мы изучили обработку форм и защиту от атак, что позволит нам создавать...
- Как обрабатывать данные, отправленные через форму.
- Защита от SQL-инъекций и XSS-атак.
- Использование функций очистки данных.
Обработка данных формы
Когда пользователь отправляет данные через форму, они попадают в суперглобальные массивы
$_GET или $_POST. Пример:
// Получение данных из формы
$name = $_POST['name'];
$email = $_POST['email'];Защита от SQL-инъекций
SQL-инъекции — это атаки, при которых злоумышленник пытается выполнить вредоносный SQL-код через форму. Для защиты от них рекомендуется использовать подготовленные выражения (prepared statements).
Пример с подготовленным выражением:
// Подключение к базе данных
$mysqli = new mysqli("localhost", "user", "password", "database");
// Подготовленное выражение
$stmt = $mysqli->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->bind_param("ss", $name, $email);
$stmt->execute();Защита от XSS-атак
XSS (Cross-Site Scripting) — это атака, при которой злоумышленник вставляет вредоносный JavaScript-код в страницу. Для защиты от них рекомендуется фильтровать и очищать данные.
Пример очистки данных:
// Очистка данных
$safeName = htmlspecialchars($name, ENT_QUOTES, 'UTF-8');
$safeEmail = filter_var($email, FILTER_VALIDATE_EMAIL);Практическое задание
Создайте PHP-скрипт, который принимает данные из формы и сохраняет их в базе данных, защитившись от SQL-инъекций и XSS-атак.
На этом восьмой урок завершён. Мы изучили обработку форм и защиту от атак, что позволит нам создавать...
Блог :: 19.11.2025 06:48:20 am
Что мы узнаем:
Сессии и cookie — это механизмы, позволяющие сохранять данные между запросами пользователя. Они помогают поддерживать состояние пользователя на протяжении нескольких страниц.
Сессии позволяют сохранять данные на стороне сервера. Каждый пользователь получает уникальный идентификатор сессии, который хранится в куки или передается через URL.
Пример использования сессий:
Cookie — это небольшие порции данных, которые хранятся на стороне клиента (браузера). Они могут использоваться для сохранения настроек пользователя, аутентификации и других целей.
Пример использования cookie:
Создайте PHP-скрипт, который сохраняет имя пользователя в сессии и выводит его на следующей странице.
На этом...
- Что такое сессии и cookie.
- Как работать с сессиями и cookie в PHP.
- Примеры использования сессий и cookie.
Что такое сессии и cookie?
Сессии и cookie — это механизмы, позволяющие сохранять данные между запросами пользователя. Они помогают поддерживать состояние пользователя на протяжении нескольких страниц.
Как работают сессии?
Сессии позволяют сохранять данные на стороне сервера. Каждый пользователь получает уникальный идентификатор сессии, который хранится в куки или передается через URL.
Пример использования сессий:
// Запуск сессии
session_start();
// Сохранение данных в сессии
$_SESSION['username'] = 'Иван';
// Чтение данных из сессии
echo $_SESSION['username']; // Вывод: ИванКак работают cookie?
Cookie — это небольшие порции данных, которые хранятся на стороне клиента (браузера). Они могут использоваться для сохранения настроек пользователя, аутентификации и других целей.
Пример использования cookie:
// Установка cookie
setcookie('username', 'Иван', time() + 3600); // Срок действия: 1 час
// Чтение cookie
echo $_COOKIE['username']; // Вывод: ИванПримеры использования
- Авторизация: Использование сессий для хранения данных о залогиненном пользователе.
- Настройки пользователя: Сохранение предпочтений пользователя с помощью cookie.
- Корзина интернет-магазина: Использование сессий для хранения корзины товаров.
Практическое задание
Создайте PHP-скрипт, который сохраняет имя пользователя в сессии и выводит его на следующей странице.
На этом...

