PHP и MySQL для веб-разработки

  • в группе, индивидуально

Коротко о курсе

  • Представление о серверном веб-программировании, изучение языка PHP 8, его специфики и особенностей.
  • Профессиональное написание PHP-сценариев и создание веб-форм.
  • Создание и управление базами данных MySQL.
  • Эффективные запросы к базе данных.
  • Работа с сессиями и cookies. Защита данных.
  • Принципы объектно-ориентированного программирования.

Краткое описание курса

Изучение языка программирования PHP 8 для создания динамических сайтов, с которыми смогут взаимодействовать посетители.

Подробно о курсе

Среда Web 2.0, активно развивающаяся сегодня, требует от разработчика создания таких сайтов, которые не просто предоставляют информацию посетителям, но вовлекают аудиторию в процесс создания сайта, дают возможность наполнять его своим контентом, настраивать его под себя. Эти и многие другие задачи возможно решить при помощи языка программирования PHP, который сегодня является основным средством создания динамических сайтов. С помощью PHP можно обрабатывать данные веб-форм, выполнять почтовые рассылки, организовывать поиск по своему сайту и создавать ресурсы, активно взаимодействующие с пользователем — блоги, форумы, соцсети.

MySQL является самой популярной и распространенной СУБД (системой управления базами данных) в Интернете, отличается хорошей скоростью работы, надежностью и гибкостью. Умение работать с базой данных MySQL необходимо для создания рейтинговых систем, персонализированных веб-приложений, требующих идентификации пользователей и позволяющих им сохранять на сайте собственные материалы (фотографии, сообщения).

В ходе занятий по курсу «PHP и MySQL для веб-разработки» слушатели получают представление о серверном веб-программировании, изучают особенности синтаксиса языка программирования PHP, учатся создавать SQL-запросы, осваивают приемы эффективной работы с базами данных.

Используя приобретенные знания и выполнив практические упражнения, слушатели курса научатся разрабатывать динамические страницы, умеющие взаимодействовать с посетителями; освоят важнейшие концепции программирования; смогут делать верификацию форм, использовать в работе сессии и cookies, организовывать загрузку файлов на сервер, выполнять модерирование данных, аутентификацию посетителей; узнают, как защитить свое приложение и данные пользователей от злоумышленников.

Программа курса

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

Тема 1. Введение в PHP. Установка локального сервера

Введение в программирование. Что такое PHP и для чего он используется. Разница между HTML, CSS, JavaScript и PHP. Что такое MySQL. Локальная работа с PHP. Установка локального сервера.

Тема 2. Пишем первую программу на PHP

Взаимодействие браузера, сервера и PHP-интерпретатора при отображении веб-страницы. Написание текста на веб-странице. Вывод текста на экран.

Тема 3. Веб-форма — средство обратной связи с посетителями сайта

HTML для PHP. Создание веб-формы. Элементы формы. Структурирование формы. Способы отправки данных веб-формы. Протокол mailto и связанные с ним проблемы. Использование сценария PHP для отправки данных. Создание страницы подтверждения.

Тема 4. Синтаксис PHP. Переменные и массивы

Переменные. Создание переменной. Типы переменных. Использование переменных. Массивы. Простые и ассоциативные массивы.

Тема 5. Получение информации из веб-формы

Получение информации из веб-формы: встроенная переменная $_POST. Построение содержания электронного письма в PHP. Повышение удобочитаемости сгенерированного письма. Отправка электронного письма с помощью PHP.

Тема 6. Работа с текстом

Тип данных String (Строка). Конкатенация. Поиск в тексте. Обрезка и замена текста. Удаление лишних пробелов.

Тема 7. Условные конструкции

Добавление в сценарий логики и контроля. Операторы if, if/else, if/elseif.

Тема 8. MySQL и SQL: база данных и язык

Понятие базы данных. Что хранится в базах данных. Правильная организация структуры базы данных.

MySQL — одна из самых распространенных СУБД (систем управления базами данных). Установка MySQL. SQL — язык для создания, модификации и управления данными в базе данных. Знакомство с некоторыми инструкциями SQL: USE (использование базы данных), CREATE (создание таблиц), DROP (удаление таблиц), INSERT (вставка строк в таблицу), SELECT (выделение).

Тема 9. Подключение PHP к MySQL

Подключение сценария PHP к базе данных MySQL. Выбор используемой базы данных. Обработка ошибок. Способы упрощения и упорядочивания программного кода. Замена введенных вручную значений переменными. Использование констант. Организация кода при помощи внешних файлов.

Тема 10. Работа с базой данных

Проектирование таблиц базы данных. Автоприращение. Создание первичного ключа в таблице. Добавление ограничений к базе данных. Изменение таблиц в базе данных. Создание PHP-сценария для получения информации из веб-формы. Создание SQL-запроса для внесения полученной информации в базу данных. Извлечение информации из базы данных. Выбор записи из базы данных. Вывод информации в браузер.

Тема 11. Обработка ошибок в сценарии

Создание html-страницы ошибки. Сообщение пользователям о возникновении ошибки. Создание страницы ошибки с кодом PHP. Добавление отладки к приложению для получения отчетов об ошибках.

Тема 12. Обработка изображений

Отправка изображений пользователя на сервер. Проверка ошибок при отправке файла. Решение проблем безопасности: проверка отправляемого файла. Сохранение изображений пользователя на сервере. Добавление информации о местоположении изображений в базу данных. Выбор изображения из базы данных и вывод его на страницу в браузере.

Тема 13. Проблемы защиты данных и их возможные решения

Защита страницы паролем. Понятие HTTP-заголовка, его предназначение. Работа с HTTP-заголовками в PHP. Аутентификация с использованием HTTP-заголовков. Оптимизация сценария защиты. Разработка сценария для модерирования данных. Условное выражение WHERE как средство для отбора данных, прошедших проверку модератором. Манипуляция сервером баз данных с помощью комментариев. Символы, меняющие содержание SQL-запроса. Дополнительная обработка данных формы для предотвращения изменений SQL-запроса. Модификация запроса INSERT для повышения уровня безопасности. Проверка данных формы на достоверность. Проверка пустых полей. Проверка типа данных. Проверка размера файла.

Тема 14. Создание персонализированного веб-приложения. Использование cookies и сессий

Организация доступа к персональным данным для пользователей. Шифрование пароля с помощью функции SHA(). Проверка подлинности пароля при входе в веб-приложение. Аутентификация пользователей с помощью HTTP. Форма для создания учетных записей для новых пользователей. Использование cookies в PHP. Средства PHP для сохранения и получения данных cookies. Вход в приложение с использованием cookies. Преимущества и недостатки cookies. Понятие сессии в PHP. Открытие сессии. Использование данных сессии. Закрытие сессии. Совместное использование cookies и сессий в веб-приложении.

Тема 15. Оптимизация кода при помощи шаблонов

Дублирование кода в разных частях сценария и связанные с этим проблемы. Использование шаблонов PHP для оптимизации кода. Поиск повторяющихся частей в приложении. Построение приложения на основе шаблонов.

Тема 16. Создание поисковой формы

Создание поисковой формы. Организация поиска в базе данных. Создание гибких поисковых запросов. Работа с текстом при создании поисковых запросов. Разбиение строки. Создание строки из подстрок. Извлечение подстрок с другого конца. Предварительная обработка поисковой строки. Применение функций для повторного использования кода. Встроенные и пользовательские функции в PHP. Сортировка результатов поиска. Вывод результатов поиска на нескольких страницах. Создание навигационных гиперссылок.

Тема 17. Основы применения регулярных выражений

Для чего нужны регулярные выражения. Поиск в строке с использованием регулярного выражения. Альтернативный поиск. Поиск с учетом позиции. Поиск набора символов. Усовершенствование кода с помощью регулярных выражений. Создание шаблона для номера телефона. Создание шаблонов с использованием метасимволов. Тонкая настройка шаблонов с помощью символьных классов. Создание шаблона для адреса электронной почты. Проверка адреса электронной почты.

Тема 18. Понятие ООП. Свойства и методы классов

Понятие объектно-ориентированного программирования. Основная идея объектно-ориентированного программирования.

Объект. Описание объекта и его возможностей. Создание классов. Экземпляры классов. Свойства и методы классов. Конструктор и деструктор. Статические свойства и методы класса. Наследование. Модификаторы доступа.

Тема 19. Создание каркаса интернет-магазина

Паттерны проектирования. Паттерн Front Controller. Паттерн MVC.

Написание роутера для интернет-магазина.

Тема 20. Создание страниц интернет-магазина

Реализация взаимодействия сайта и базы данных. Создание вида главной страницы. Настройка вывода «последних товаров» на главной странице. Настройка меню сайта.

Создание страницы конкретного товара.

Создание каталога. Создание стартовой страницы и страниц для категорий каталога. Постраничная навигация.

Тема 21. Работа с пользователями на сайте

Регистрация и авторизация пользователя на сайте магазина. Разработка Личного кабинета.

Организация корзины. Добавление товаров в корзину. Подсчет количества товаров в корзине. Редактирование списка товаров в корзине. Очистка корзины.

Управление заказами. Оформление заказа. Сохранение информации о заказе в базе данных. Использование формата JSON для записи массива в базу данных.

Тема 22. Создание панели администратора

Создание панели администратора. Управление товарами: добавление, редактирование, удаление. Управление заказами пользователей: редактирование, изменение статуса, удаление.

Вернуться в начало раздела

Организация занятий

Необходимая подготовка и возраст

Для успешного освоения программы курса нужно умение создавать статические веб-страницы на языках HTML5 и CSS3. Получить необходимые знания можно на нашем курсе «Веб-дизайн» или самостоятельно. Мы принимаем на данный курс ребят .

Продолжительность курса и график занятий

Продолжительность курса составляет (1 учебный час равен 45 минутам). Все указанное время слушатели работают с преподавателем за собственным рабочим местом.

Обучение проводится в один из рабочих дней недели (понедельник–четверг) во второй половине дня. День недели и время начала занятий согласовываются со слушателями. В связи с большим объемом материала по курсу одно занятие длится 3 академических часа, например, с 16.00 до 18.00. Благодаря этому 90 учебных часов программы курса занимают 7,5 месяцев. Обучение заканчивается в апреле, а не в мае, чтобы у старшеклассников было больше времени для окончания учебного года в школе.

Обучение по данному курсу проводится по адресу:

ул. Карла Маркса, 67

Стоимость обучения и запись на курс

Оплата обучения производится помесячно или единовременно. Стоимость курса при помесячной оплате составляет . При этом осуществлять предоплату не требуется, более того, вы имеете право бесплатно посетить первое занятие (2 академических часа) и уже после этого принять решение о продолжении обучения и оплате занятий удобным для вас способом.

Документ, подтверждающий прохождение курса

По окончании обучения и после сдачи практических зачетов вы получите Сертификат об окончании курса .

Так выглядит сертификат, выдаваемый по курсу PHP и MySQL для веб-разработки.

Согласие на обработку персональных данных

Настоящим в соответствии с Федеральным законом № 152-ФЗ «О персональных данных» от 27.07.2006 года свободно, своей волей и в своем интересе выражаю свое безусловное согласие на обработку моих персональных данных АНО ДПО «ИНСТИТУТ СОВРЕМЕННОГО ОБРАЗОВАНИЯ» (ОГРН 1143600000290, ИНН 3666999768), зарегистрированным в соответствии с законодательством РФ по адресу: ул. Карла Маркса, дом 67, Воронеж, Воронежская область, Россия, 394036 (далее по тексту — Оператор).
Персональные данные — любая информация, относящаяся к определенному или определяемому на основании такой информации физическому лицу.
Настоящее Согласие выдано мною на обработку следующих персональных данных:
 — Имя;
 — Телефон.

Согласие дано Оператору для совершения следующих действий с моими персональными данными с использованием средств автоматизации и/или без использования таких средств: сбор, систематизация, накопление, хранение, уточнение (обновление, изменение), использование, обезличивание, а также осуществление любых иных действий, предусмотренных действующим законодательством РФ как неавтоматизированными, так и автоматизированными способами. Данное согласие дается Оператору для обработки моих персональных данных в следующих целях:
 — предоставление мне услуг/работ;
 — направление в мой адрес уведомлений, касающихся предоставляемых услуг/работ;
 — подготовка и направление ответов на мои запросы;
 — направление в мой адрес информации, в том числе рекламной, о мероприятиях/товарах/услугах/работах Оператора.

Настоящее согласие действует до момента его отзыва путем направления соответствующего уведомления на электронный адрес osnova@webfly.pro. В случае отзыва мною согласия на обработку персональных данных Оператор вправе продолжить обработку персональных данных без моего согласия при наличии оснований, указанных в пунктах 2 — 11 части 1 статьи 6, части 2 статьи 10 и части 2 статьи 11 Федерального закона № 152-ФЗ «О персональных данных» от 27.07.2006 г.