Вивчення мови програмування PHP шляхом побудови власної системи управління контентом.
Цей курс – це третій етап повного курсу FullStack Web Developer.
Обов’язкова вимога:
- Знання основ HTML і CSS3;
- JavaScript Basic.
Програма курсу:
1 заняття:
Local Development Environment
- Розгортання середовища розробки (Apache, PHP і MySQL)
- Основи PHP
- Вбудовування PHP у HTML
- Використання динамічних даних
- Вставка коментарів у PHP
- Типи даних. Змінні й константи.
- Операції над числовими, логічними й рядковими змінними.
- Вирази, оператори й засоби управління процесом виконання програми в PHP.
2 заняття:
Основні структури
- Константи
- Керуючі структури
- Робота з конструкціями if-else і switch-case
- Порівняння й логічні оператори
- Робота з циклами foreach, for і while
- Робота з математичними функціями
3 заняття:
Функції в PHP
- Вбудовані функції PHP
- Функції для роботи з файловою системою й каталогами.
- Функції для користувача
- Визначення функцій
- Область видимості змінних. Глобальні й локальні змінні.
- Параметри функцій
- Значення, що повертаються з функцій
- Вкладені функції
- Рекурсивна функція
4 заняття:
Масиви
- Індексований масив
- Асоціативні масиви
- Багатовимірні масиви
- Функції для роботи з масивами
- Стеки й черги
- Сортування масиву
5 заняття:
Введення в HTTP-запити
- Принципи роботи протоколу HTTP
- Робота з формами
- Методи GET і POST
- Перевірка форми. Обробка помилок
- Витяг інформації з форми
6 заняття:
Робота з файлами
- Робота з файлами
- Відкриття та створення файлів
- Запис файлів
- Читання файлів
- Видалення файлів
- Передача файлів на сервер
- Робота з каталогами
- Створення каталогів
- Видалення каталогів
7 заняття:
Вбудовані функції і змінні
- Функції для роботи зі змінними
- Математичні функції
- Робота зі строковими функціями
- Сімейство print
- Функції substr, str_replace
- Функції explode і implode
- Функції дати й часу
- Перетворення рядка
- Суперглобальні змінні
- Підключення файлів
- Робота з регулярними виразами
8 заняття:
Основи роботи з базами даних
- Основи роботи з базами даних
- Введення в PhpMyAdmin
- Проектування бази даних. Створення бази
- Таблиці
- Основні поняття мови SQL. Оператори SELECT, INSERT, UPDATE, DELETE.
- Первинні ключі. Нормалізація.
- Дамп
- Інтерфейс PDO
- Функції PHP для роботи з MySQL. Підключення до бази даних. Виконання запитів. Вибірка наборів даних.
- Команди ORDER BY, LIMIT, COUNT, LIKE в SQL
9 заняття:
Сесії та Cookie
- Принципи роботи Cookie
- Cookie-файли.
- Відправка Cookie клієнту
- Прийом Cookie на стороні сервера
- Cookie з тимчасової міткою
- Сегментація Cookie
- Функції авторизації
- Перевірка пароля
- Загальне поняття хешу
- Хешування пароля
- Сеанси. Механізми роботи сесій.
- Відкриття сесій
- Змінні сесії
- Сесійні Cookie
- Закриття сесій
- Передача заголовків HTTP.
10 заняття:
Концепція об’єктно-орієнтованого програмування (ООП)
- Класи та об’єкти
- Інкапсуляція
- Створення класу
- Конструктор і деструктор
- Успадкування
- Модифікатори доступу
11 заняття:
Геттери й сеттери
- Поліморфізм
- Перевизначення властивостей
- Перевизначення методів
- Фінальні методи і класи
- Статичні методи і властивості
- Константи класу
- Абстрактні класи
- Інтерфейси
- try … catch
- InstanceOf
12 заняття:
Введення в CMS
- Створення бази даних і таблиць для CMS
- Підключення до бази даних
- Вставка даних у таблиці та їх відображення
- CRUD
13 заняття:
CMS — Авторизація
- Авторизація через файли
- Авторизація через cookie
- Авторизація через бази даних
- Створення таблиці користувачів і вставка даних
- Відображення користувачів в адмінці
- Додавання користувачів
- Видалення користувачів
- Зміна ролей користувачів
- Оновлення користувача
14 заняття:
Аутентифікація
- Реєстрація та авторизація одночасно
- Створення сторінки входу
- Права доступу користувачів до сайту
- Установка сесії
- Вихід
- Створення профілю
- Відображення призначених для користувача даних
- Оновлення даних користувача
15 заняття:
CMS — Dashboard
- Розбивка на сторінки
- Коментарі
- Додавання WYSIWYG Editor
- Шифрування паролів користувачів
- Фільтрація та валідація форм
- Криптографічні функції
- Безпека роботи з БД
- SQL Injection – Як запобігти
- Захист від XSS