Требуется собственный локальный MySQL 8.0.16+ и PHP 8.2+ с mysqli/mysqlnd.
Это отдельная учебная база; запросы к серверу здесь не проверялись, проверен синтаксис PHP.
В MySQL-клиенте администратор создаёт учебное окружение один раз:
CREATE DATABASE php_reference_lesson CHARACTER SET utf8mb4;
CREATE USER 'lesson_user'@'127.0.0.1' IDENTIFIED BY 'replace-with-your-local-password';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE TEMPORARY TABLES ON php_reference_lesson.* TO 'lesson_user'@'127.0.0.1';
Если сервер сопоставляет TCP-подключение другой локальной host-записи пользователя,
используйте согласованные с администратором локальные account/host, не открывайте доступ '%'.
Укажите выбранные учебные параметры в config.php. Файл не помещают в публичный каталог сайта.
Из папки архива: php example.php
catalog.php создаёт TEMPORARY products только в текущем соединении. Схема есть в schema.sql.
Содержимое исчезает после закрытия соединения; существующая постоянная products не изменяется.
Специальный пример может требовать дополнительные права/другую СУБД: читайте его описание.
