Образовательный центр программирования и высоких технологий

Содержание

Слайд 2

Силкович Юрий Николаевич +375 29 161 37 29 +375 29 255 80 82 yury.silkovich@gmail.com Skype: ysilkovitch

Силкович Юрий Николаевич +375 29 161 37 29 +375 29 255 80 82 yury.silkovich@gmail.com Skype:

ysilkovitch
Слайд 3

Программирование на PHP. Базовый курс. Основы серверных Web-технологий. Установка и настройка

Программирование на PHP. Базовый курс.

Основы серверных Web-технологий. Установка и настройка Apache,

PHP, MySQL. Краткий курс по html и css.
Типы данных, основные операторы, условные операторы, базовые функции PHP
Операторы циклов
Массивы
Строковые функции, пользовательские функции
Постраничный вывод информации
Основы объектно-ориентированного программирования в PHP.
Работа с базой данных. Простейшие запросы на выборку.
Обработка файлов в PHP
Обработка экранных форм, загрузка файлов на сервер
Обработка данных форм, AJAX
Создание простейшей CMS.
Слайд 4

СУБД MySQL Основные понятия баз данных. Язык SQL. Проектирование баз данных.

СУБД MySQL

Основные понятия баз данных. Язык SQL. Проектирование баз данных.
Проектирование баз

данных. Реляционная модель. Нормализация.
Создание, изменение, удаление таблиц. Использование Workbench, phpMyAdmin.
Вставка, удаление и обновление данных
Однотабличные запросы на выборку данных. Условия и сортировка в запросах.
Многотабличные запросы на выборку данных. Объединение таблиц.
Группировка данных в запросах. Использование встроенных функций в запросах.
Использование подзапросов. Оптимизация запросов.
Транзакции. Хранимые процедуры. Триггеры.
Проектировать БД по теме.
Слайд 5

Программирование на PHP. Углубленный курс ООП - наследование, пространства имен. MVC.

Программирование на PHP. Углубленный курс

ООП - наследование, пространства имен. MVC.
Регулярные выражения
Функции

для работы с базами данных. Использование функций баз данных при разработке Web-приложения.
Интерфейс PDO для доступа к базам данных.
Заголовки, Cookies, сессии. Организация сессий.
Обработка данных в формате XML
Использование AJAX, JSON
Шаблонизация
Отправка почты. Сетевые функции PHP.Файл .htaccess, HTTP-авторизация, mod_rewrite.
Обработка изображений в PHP. Создание MVC CMS. Стратегия поиска ошибок и отладка кода.
Защита проекта
Слайд 6

Основные понятия Web-сервер Web-клиент (браузер) URL IP – адрес Домен DNS Порт

Основные понятия

Web-сервер
Web-клиент (браузер)
URL
IP – адрес
Домен
DNS
Порт

Слайд 7

Слайд 8

Протокол HTTP1.1 (RFC 2616), HTTP2 (RFC 7540) Запрос клиента http://host.com:80/path/document.html?parameters Первая

Протокол HTTP1.1 (RFC 2616), HTTP2 (RFC 7540)

Запрос клиента
http://host.com:80/path/document.html?parameters
Первая строка запроса:
GET /path/document.html?parameters

HTTP/1.1
GET - метод
/path/document.html?parameters – URI (Universal Resource Identifier)
HTTP/1.1 - протокол
Слайд 9

Методы запроса OPTIONS GET HEAD POST PUT DELETE TRACE CONNECT

Методы запроса

OPTIONS
GET
HEAD
POST
PUT
DELETE
TRACE
CONNECT

Слайд 10

Заголовки запроса Accept Accept-Charset Accept-Encoding Accept-Language Authorization Expect From Host If-Match

Заголовки запроса

Accept
Accept-Charset
Accept-Encoding
Accept-Language
Authorization
Expect
From
Host
If-Match
If-Modified-Since

If-None-Match
If-Range


If-Unmodified-Since
Max-Forwards
Proxy-Authorization
Range
Referer
TE
User-Agent
Content-Length
Слайд 11

Слайд 12

Ответ сервера HTTP/1.1 200 OK (протокол, код ответа, расшифровка кода) Дополнительная

Ответ сервера

HTTP/1.1 200 OK (протокол, код ответа, расшифровка кода)
Дополнительная информация сервера,

например
Server
Pragma
Location
Мета-информация о содержимом, например
Date
Content-Type
Content-Length
Last-Modified
Данные
Слайд 13

Коды ответа 100 Continue 101 Switching Protocols 200 OK 201 Created

Коды ответа

100 Continue
101 Switching Protocols
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No

Content
205 Reset Content
206 Partial Content
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
Слайд 14

Коды ответа 305 Use Proxy 307 Temporary Redirect 400 Bad Request

Коды ответа

305 Use Proxy
307 Temporary Redirect
400 Bad Request
401 Unauthorized
402 Payment Required
403

Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Time-out
409 Conflict
410 Gone
Слайд 15

Коды ответа 411 Length Required 412 Precondition Failed 413 Request Entity

Коды ответа

411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI

Too Large
415 Unsupported Media Type
416 Requested range not satisfiable
417 Expectation Failed
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Time-out
505 HTTP Version not supported extension-code
Слайд 16

URL – кодирование URL – кодирование В методах GET и POST

URL – кодирование

URL – кодирование
В методах GET и POST данные доставляются

в URL-кодированном виде. Это способ перекодировки, который все символы в диапазонах 0—32 и 128—255 представляет в шестнадцатеричных кодах.
Например, если нам нужно закодировать символ с шестнадцатеричным кодом 9е, это будет выглядеть так: %9Е. Помимо этого, пробел представляется символом плюс (+). Поэтому в программах иногда может понадобиться перекодировать такую информацию.
Пример:
https://yandex.by/search/?lr=157&text=%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB
Слайд 17

ПО Что устанавливаем? Вариант 1 (простой). Устанавливаем готовую сборку, например Open

ПО

Что устанавливаем?
Вариант 1 (простой). Устанавливаем готовую сборку, например
Open Server (https://ospanel.io/ -

Windows)
XAMPP (https://www.apachefriends.org/ru/index.html - Windows, Linux)
MAMP (https://www.mamp.info/en/ - macOS, Windows)
Вариант 2. Устанавливаем отдельно Apache, PHP, MySQL и производим настройку файлов конфигурации.
Для разработки в принципе можно использовать даже простые текстовые редакторы типа Notepad++, однако лучше использовать обладающие более продвинутыми возможностями IDE
PhpStorm (https://www.jetbrains.com/)
NetBeans (https://netbeans.apache.org/)
Eclipse (https://www.eclipse.org/)