Главная » 2014 » Июнь » 13 » Создание движка на PHP и MySQL 2.0 (Михаил Русаков) [2014]
Создание движка на PHP и MySQL 2.0 (Михаил Русаков) [2014] | 20:46 |
[center][/center] Вот такой огромный курс Вы получаете! Но самое главное – это не размер курса, а то, насколько много в нём содержится полезной информации. Сюда я поместил свой многолетний опыт создания огромного числа сайтов. Вы можете всё это взять одним махом и применить уже в своей практике. Часть 1. ТЕОРИЯ Первая часть данного курса теоретическая. [center][/center] Она бесконечно важна, поскольку прежде чем создавать, нужно чётко представлять, что будет в итоге создаваться. В этом разделе Вы всё увидите. Разберём подробнее каждый урок из этого раздела. 1-й урок. Как проходить курс. Здесь Вы узнаете, как наиболее эффективно проходить данный курс. 2-й урок. Общая структура движка. Важнейший урок, из которого Вы узнаете общую структуру движка, который мы будем создавать в курсе. 3-й урок. Разбор ядра. В данном уроке мы с Вами подробно разберём ядро и классы, которые будут созданы в практической части курса. Из этого видео Вы узнаете, какой класс для чего нужен и за что отвечает. 4-й урок. Разбор адаптеров. Из этого урока Вы узнаете, для чего нужны адаптеры и где они используются. А также какие адаптеры будем создавать уже мы в курсе. 5-й урок. Разбор работы с базой данных. Очень важный урок, который расскажет о новом принципе работы с базой данных. Речь здесь идёт не о классе для отправки запросов, а о гораздо большем и более сложном, но крайне важном классе. Это одна из тех, как я считаю, гениальных мыслей, которую я взял из одной англоязычной книги. 6-й урок. Разбор валидаторов. Урок, в котором будет разобран механизм проверки данных перед их отправкой в базу данных. Все нюансы Вы узнаете уже из этого урока. 7-й урок. Разбор маршрутизатора. Здесь Вы узнаете о механизме генерации страниц по запросу пользователя с использованием различных контроллеров. Что это за контроллеры, как они выглядят – всё это Вы узнаете из этого видео. 8-й урок. Разбор модульной структуры. Одна из ключевых частей моего подхода к созданию движка – это модульность. То есть каждый некий самостоятельный блок – это отдельная самодостаточная единица, имеющие свои свойства и TPL-файл для представления. Об этом подробно Вы узнаете из этого последнего урока теоретической части. Часть 2. ПРАКТИКА (Создание MyRusakov.ru) [center][/center] Особенностью практической части является создание движка для моего сайта - MyRusakov.ru. На входе у нас будет готовая вёрстка для сайта, а на выходе данной части курса мы должны получить уже полноценный сайт. Теперь перейдём к разделам данной части. Раздел 1. ЯДРО [center][/center] В данном разделе Вы увидите процесс создания ядра. Особенностью ядра является то, что создаётся оно лишь единожды, а затем Вы сможете его копировать от сайта к сайту, никак не изменяя. Кода здесь будет очень много, но его необходимо один раз создать. Впрочем, Вы можете его не создавать, а просто внимательно слушать, а весь исходный код я всё равно предоставлю. 1-й урок. Создание базы данных. Здесь мы создадим все таблицы, которые нам будут нужны для создания сайта. Это не относится напрямую к ядру, но это первое, что нужно делать. 2-й урок. Создание структуры движка. Здесь Вы узнаете, какая должна быть структура файлов и папок, какие важнейшие файлы нужно создать, чтобы максимально обезопасить свой сайт. 3-й урок. Создание конфигурационного файла. В этом видео мы с Вами создадим файл настроек нашего сайта. Здесь также есть несколько рекомендаций, о которых знают немногие, но их крайне желательно соблюдать. Это так же касается безопасности и грамотности самого кода. Обо всём об этом я здесь рассказываю. 4-й урок. Создание класса для работы с базой данных. Здесь мы обсудим безопасность при выполнении запросов, напишем соответствующий код. В конце урока, у нас будет готовый класс по работе с запросами к базе данных. 5-й урок. Создание класса Select. Данный класс отвечает за работу с SELECT-запросами. Эту идею я взял из Zend Framework, и она идеально подошла к моему подходу создания движка. 6-й урок. Создание класса для работы с объектами. Под объектами здесь подразумевается запись из определённой таблицы, то есть для каждой таблицы свой класс. Но в этом уроке разбирается особый принцип создания этих классов. Он резко отличается от того, что я делал ранее. И именно эту идею я взял из той англоязычной книги. Всё это Вы узнаете из этого урока. 7-й урок. Создание класса для работы с запросами. В данном видео будет создан класс для работы с POST и GET запросами. Вы узнаете важные моменты по безопасности этих запросов, которые будут учтены при разработке этого класса. 8-й урок. Создание класса для работы с URL. Важный урок по созданию класса для работы с URL-адресами. Из него Вы узнаете, что должен делать данный класс. Безусловно, всё это мы реализуем в этом видео. 9-й урок. Создание класса Validator. Данный класс является абстрактным и общим для всех классов, отвечающих уже за проверку определённого типа данных. Важность этого класса трудно переоценить, и его создание Вы увидите в этом уроке. 10-й урок. Создание класса ValidatorException. При некорректности входящих данных будет выбрасываться исключение, и этот класс исключения мы сделаем в этом видео. 11-й урок. Создание шаблонизатора. В этом видео Вы увидите, как будет реализована часть по выводу данных на страницу в браузере пользователя. 12-й урок. Создание маршрутизатора. Маршрутизатор - это механизм, который будет анализировать запрос пользователя и вызывать соответствующий объект для генерации определённой страницы. Такой механизм и будет создан в данном видео. 13-й урок. Создание контроллера. Контроллеров, вообще говоря, будет много. Но в данном видео мы создадим абстрактный класс – родительский для всех остальных. Как обычно, всё с детальным разбором: что, где и зачем нужно. 14-й урок. Создание класса для модулей. В данном видеоуроке Вы увидите процесс создания абстрактного класса для модулей сайта. Если не понять, как он работает, то Вы не сможете использовать ядро для других сайтов. Поэтому данный урок очень и очень важный. 15-й урок. Создание класса FormProccessor. Этот класс отвечает за обработку данных, пришедших из форм. Если Вы уже знаете PHP, то должны были обратить внимание, что формы обрабатываются однотипно. Я максимально возможно выделил всю общую часть и вытащил в этот класс. Таким образом, Вы увидите создание того, что сэкономит в будущем огромное количество времени по обработке форм. А про уменьшение количества кода, переносимость и повышенную защиту от случайных ошибок я вообще молчу. 16-й урок. Создание класса для работы с сообщениями сайта. В этом видео Вы увидите процесс создания класса для работы с системными сообщениями сайта, которую имеют место быть практически на каждом сайте. 17-й урок. Создание класса для отправки e-mail. Важнейший урок, ведь очень часто письма попадают в спам или вообще не доходят, либо приходят, но с неправильной кодировкой. Все эти проблемы можно свести к минимуму, если написать правильный код отправки e-mail. И этот код будет написан прямо на Ваших глазах, разумеется, с подробными комментариями. Раздел 2. АДАПТЕРЫ [center][/center] В этом разделе Вы увидите процесс создания адаптеров, служащих посредниками между ядром и требуемым интерфейсом конечного сайта. 1-й урок. Создание адаптера для DataBase. В этом видео будет создан адаптер для класса, отвечающего за работу с базой данных. 2-й урок. Создание адаптера для Select. В этом видео мы разберём создание адаптера для класса, отвечающего за работу с SELECT-запросами. 3-й урок. Создание адаптера для ObjectDB. Здесь будет показано расширение абстрактного класса AbstractObjectDB функционалом, который нам потребуется для MyRusakov.ru. 4-й урок. Создание адаптера для Mail. Данный урок содержит создания класса-адаптера для отправки e-mail. 5-й урок. Создание адаптера для Module. В этом уроке мы напишем адаптер для работы с модулями именно для сайта MyRusakov.ru Раздел 3. ВАЛИДАТОРЫ [center][/center] В данном разделе будут создано множество классов для проверки самых различных типов данных. Ведь крайне важно перед отправкой данных в базу – тщательно проверить, что именно отправляется. 1-й урок. Валидатор для хэша. В данном уроке будет создан класс, отвечающий за проверку хэша. 2-й урок. Валидатор для булевской переменной. Важнейший валидатор, который необходим практически для каждого сайта, где есть база данных. 3-й урок. Валидатор для даты. В данном уроке Вы увидите, как проверяется дата на корректность ввода. Здесь есть определённые нюансы, о которых Вы и узнаете. 4-й урок. Валидатор для e-mail. В этом видео мы создадим валидатор для проверки e-mail адресов, вводимых пользователями. 5-й урок. Валидатор для ID. Тоже важнейший класс, который так же необходим практически на каждом сайте с базой данных. 6-й урок. Валидатор для изображений. Здесь будет создан класс, отвечающий за проверку имён файлов с изображениями. 7-й урок. Валидатор для IP-адреса. Из этого видео Вы узнаете, как проверять на корректность IP-адреса. 8-й урок. Валидатор для логина. В данном уроке будет реализован механизм проверки логина. 9-й урок. Валидатор для описания. Урок по проверке корректности передаваемого мета-тега description. 10-й урок. Валидатор для ключевых слов. Из данного урока Вы увидите проверку ключевых слов, которые подставляются в мета-тег keywords. 11-й урок. Валидатор для имени. Здесь Вы увидите, как правильно проверять на корректность имена пользователей. 12-й урок. Валидатор для пароля. В этом уроке будет создан валидатор для проверки пароля. В том числе, будет учитываться и его сложность. 13-й урок. Валидатор для текста. В этом видео есть много нюансов по проверке описаний тех же разделов и категорий, ведь это целый кусок текста, причём практически произвольного, поэтому очень важно не забывать о безопасности. О том, как добиться максимальной безопасности, Вы узнаете из этого видео. 14-й урок. Валидатор для небольшого текста. Текст статьи и текст комментария – разные вещи. Нельзя позволять пользователям отправлять большие объёмы данных, иначе они начнут этим умышленно злоупотреблять. Поэтому создаётся отдельный валидатор именно для небольшого объёма текста. 15-й урок. Валидатор для заголовков. Различные заголовки тех же статей так же нуждаются в проверке, и в этом видео будет создан валидатор для их проверки. 16-й урок. Валидатор для URI. Данный урок посвящён проверке URI-адресов. 17-й урок. Валидатор для URL. В этом видео Вы увидите создание валидатора для проверки на корректность URL-адресов. Раздел 4. ОБЪЕКТЫ [center][/center] В данном разделе Вы увидите, как создаются классы для самых различных объектов из базы данных. 1-й урок. Создание класса для статей. В этом видео будет создан класс для объекта «Статья». 2-й урок. Создание класса для разделов. Здесь Вы увидите создание класса для разделов. 3-й урок. Создание класса для категорий. В этом уроке Вы увидите создание класса для удобной работы с категориями сайта. 4-й урок. Создание класса для комментариев. Отдельный объект для работы с комментариями будет создан в этом видеоуроке. 5-й урок. Создание класса для курсов. На сайте MyRusakov.ru есть блоки, где выводятся различные курсы. Для них будет так же создан отдельный объект. 6-й урок. Создание класса для меню. Каждый пункт меню – это отдельный объект, который, безусловно, нуждается в своих свойствах и методах. Поэтому в данном видео будет создан класс для меню. 7-й урок. Создание классов для опроса. Здесь будет несколько классов, каждый из которых будет отвечать за свой тип: класс для самого опроса, класс для варианта ответа и класс для голоса. 8-й урок. Создание класса для цитат. На сайте MyRusakov.ru есть блок с умными цитатами, которые хранятся в базе данных, и для них так же необходим отдельный класс, который будет нами создан в этом видео. 9-й урок. Создание класса для пользователей. Достаточно сложный класс, но все эти моменты я подробно разберу в этом уроке. Раздел 5. ДОПОЛНИТЕЛЬНЫЕ КЛАССЫ [center][/center] В данном разделе создаются вспомогательные классы, которые нам необходимы для сайта MyRusakov.ru. Впрочем, эти классы, скорее всего, потребуются и для других сайтов тоже. 1-й урок. Создание класса для капчи. Здесь есть много нюансов по выводу читабельной капчи, но в то же время максимально затруднённой для роботов. Подобную капчу мы с Вами здесь и нарисуем, разумеется, оформив её в виде отдельного класса. 2-й урок. Создание класса JSValidator. Бесконечно полезный класс по проверке форм на JavaScript. Фактически, все необходимые проверки подключаются к форме непосредственно ещё в PHP. А в JavaScript мы напишем небольшую библиотеку, которая реализует проверку форм. Таким образом, Вам уже не надо будет создавать каждый раз отдельную функцию для проверки очередной формы. Достаточно будет задать ряд параметров, согласно которым будет осуществляться проверка, а всё остальное сделает код, который в этом уроке мы и напишем. Раздел 6. МОДУЛИ [center][/center] В этом разделе Вы увидите создание самых различных модулей для сайта MyRusakov.ru. Будут разобраны все классы со всеми свойствами и методами, а также TPL-файлами, отвечающими за каждый модуль. Итак, вот какие уроки Вас ждут: 1-й урок. Создание модуля для мета-тегов. Достаточно универсальных для самых разных сайтов модуль. И его создание Вы увидите в этом уроке. 2-й урок. Создание модуля для верхнего меню. В этом видео Вы увидите создание модуля для верхнего меню. 3-й урок. Создание модуля для главного меню. Поскольку меню на сайте двухуровневое, то в этом уроке Вы узнаете, как выводить меню, в том числе и многоуровневые. Безусловно, необходима рекурсия, а как это всё объединить вместе с TPL-файлами – это Вы узнаете из этого урока. 4-й урок. Создание модуля для верхней части. В этом видео Вы увидите, как делается модуль для конкретной части страницы. Это совершенно универсальный модуль, и такие модули надо уметь создавать в обязательном порядке. 5-й урок. Создание модуля для опроса. Этот модуль содержит цикл по выводу вариантов ответа для опроса. Как вмещается цикл в TPL-файл, Вы узнаете из этого видеоурока. 6-й урок. Создание модуля для курсов. На моём несколько блоков, относящихся к курсам. Разумеется, создавать отдельные модули для каждого однотипного блока – неразумно. Однако, кое-какие принципиальные отличия у них есть (например, у одного блока есть форма подписки, у другого нет). Как обрабатывается это различие, Вы узнаете из этого видео. 7-й урок. Создание модуля для цитат. В этом уроке Вы увидите создание модуля для вывода цитат. 8-й урок. Создание модуля для раздела. Опять же, достаточно универсальный модуль, ведь модуль, отвечающий за вывод нескольких статей, используется на многих сайтах. 9-й урок. Создание модуля для категории. Здесь мы создадим модуль, отвечающий за вывод центрального содержимого на странице с категорией. 10-й урок. Создание модуля для навигации по страницам. Ещё один универсальный модуль, который пригодится на многих сайтах, ведь странно будет выводить все 1000 записей на одну страницу. Поэтому требуется создание блока с навигацией. 11-й урок. Создание модуля для панели пользователя. В этом уроке будет создан модуль для вывода пунктов меню в панели у зарегистрированных пользователей. 12-й урок. Создание модуля для результатов опроса. Здесь будет разработан модуль, в котором выводятся результаты голосования на сайте. 13-й урок. Создание модуля для хлебных крошек. Тоже очень популярный модуль, который мы с Вами сделаем в этом видеоуроке. 14-й урок. Создание модуля для формы. В этом видео Вы увидите создание универсального модуля, отвечающего за вывод HTML-форм на сайте. 15-й урок. Создание модуля для результатов поиска. Последний модуль, который мы создадим для сайта MyRusakov.ru, и он посвящён небольшим блокам, показывающим часть статьи, которая удовлетворяет запросу в поиске. Причём будет выводиться та часть, где максимальная частота совпадений с поисковым запросом. Раздел 7. ВЫВОД САЙТА [center][/center] В предыдущих разделах мы уже создали все необходимые элементы для сайта. И в этом разделе мы уже будем собирать все эти кирпичики воедино, выводя страницы сайта. Также Вы увидите обработку форм на сайте: регистрации, авторизации, опроса – и всё это с использованием наших классов. Именно в этот момент будет уже ясна вся красота того, что было нами создано. 1-й урок. Вывод главной страницы. В данном видео мы соберём множество блоков и выведем их на страницу, а также сделаем центральную часть, так же состоящую из различных модулей. 2-й урок. Вывод разделов. Здесь будет сделан вывод страницы с разделом. 3-й урок. Вывод категорий. В данном уроке так же будут объединены различные модули из предыдущего раздела. В итоге, будет получена страница с категорией. 4-й урок. Вывод статей. После этого урока мы с Вами выведем все страницы со статьями. Тут важность движка (любого) отчётливо видна, ведь мы с Вами выведем всего одну ключевую страницу на основе наших модулей, при этом на сайте появятся целая армия страниц, каждая из которых содержит свою статью. 5-й урок. Вывод комментариев. Сложность данного урока в том, что комментарии древовидные. Но, посмотрев данный урок, для Вас не составит труда повторить достаточно сложный материал, поскольку я всё тщательно разжевал в данном видео. 6-й урок. Вывод результатов опроса. Здесь будет выведена очередная ключевая страница с результатом голосований. Опять же, ключевая страница одна, а число этих страниц на сайте равно числу опросов. 7-й урок. Вывод формы регистрации. Здесь будет создана ещё одна страница, на которой будет находиться форма для регистрации пользователей. Безусловно, там будет капча, которую мы с Вами выведем на страницу. 8-й урок. Регистрация пользователей с активаций по e-mail. Ключевой урок, который покажет Вам, как обрабатывать формы на сайтах. 9-й урок. Авторизация пользователей. Ещё один урок, который так же связан с обработкой формы. Но очень важно ещё знать, как делать авторизацию в сложной системе иерархии объектов. Об этом Вы узнаете из этого урока. 10-й урок. Редактирование профиля. Очень полезный урок, в котором мы с Вами реализуем смену аватарок у пользователей, тем самым, Вы поймёте как реализован механизм работы с файлами в движке, а также реализуем возможность изменения имени и пароля пользователя. 11-й урок. Восстановление пароля. Данный урок покажет механизм восстановления пароля с отправкой секретной ссылки на e-mail и последующей сменой пароля. 12-й урок. Восстановление логина. Ещё один урок, показывающий механизм восстановления логина по e-mail. 13-й урок. Поиск по сайту. Очень важный урок, который не только научит Вас делать поиск по базе данных, но ещё и сортировать результаты по релевантности. Достаточно сложный алгоритм, который Вы увидите в этом видео. 14-й урок. Заключение. Важные напутствия по поводу того, как правильно применять знания из курса. БОНУСЫ Для достижения максимального эффекта от прохождения курса «Создание движка на PHP и MySQL 2.0» я подготовил ещё несколько Бонусов. Бонус 1. СОЗДАНИЕ API НА САЙТЕ [center][/center] Очень полезный Бонус для тех, кто планирует создавать различные сервисы в Интернете. На большинстве из них есть свой API, и как он создаётся, Вы узнаете из этого Бонуса. Причём, даже если у Вас не сервис, то Вам всё равно может потребоваться API для, например, обработки запросов, отправленных через Ajax, как это сделано на MyRusakov.ru. Поэтому уметь создавать API надо обязательно, и этому Вы научитесь в данном Бонусе. 1-й урок. Что такое API и принцип его работы. Прежде чем создавать API на сайте, мы с Вами разберём, что это такое, для чего нужно и как это работает. 2-й урок. Создание класса для API. В этом уроке мы перейдём к практике создания API на сайте MyRusakov.ru. 3-й урок. Пример работы с API. В данном уроке мы разберём, как работать с API и как правильно писать запросы к серверу. Бонус 2. ДРЕВОВИДНЫЕ КОММЕНТАРИИ НА JQUERY И AJAX [center][/center] Очень полезный Бонус, в котором мы создадим древовидные комментарии на сайте MyRusakov.ru. Причём добавление, редактирование и удаление комментариев происходит без перезагрузки страницы, а пользователь, на чей комментарий был дан ответ, будет получать e-mail уведомление об этом. Реализацию всего этого Вы увидите в этом Бонусе. 1-й урок. Добавление методов в API. Поскольку комментарии будут добавляться без перезагрузки страницы, мы с Вами будем отправлять через Ajax запросы на сервер. И в этом видео мы добавим методы обработки этих запросов. 2-й урок. Права доступа. В этом уроке мы займёмся правами доступа к комментариям, чтобы каждый пользователь имел доступ исключительно к своим комментариям, а не ко всем. И в то же время, чтобы добавлять могли комментарии только зарегистрированные пользователи. Как всё это делается, Вы узнаете из этого урока. 3-й урок. Редактирование TPL-файла. В этом видео мы добавим ссылки «Редактировать» и «Удалить», причём только у тех комментариев, к которым имеет доступ пользователь. 4-й урок. Добавление комментариев. Здесь мы займёмся работой с jQuery и Ajax: с целью вывода формы при клике по ссылкам «Добавить комментарий» и «Ответить», а также динамический вывод на странице добавленного комментария. 5-й урок. Редактирование комментариев. В этом видеоуроке мы займёмся реализацией редактирования комментария на jQuery и Ajax. 6-й урок. Удаление комментариев. В этом видео Вы увидите, как реализуется удаление комментариев без перезагрузки страницы, разумеется, с помощью jQuery и Ajax. Бонус 3. СОЗДАНИЕ ЧПУ-ССЫЛОК [center][/center] ЧПУ-ссылки крайне важны для оптимизации под поисковые системы. В этом Бонусе Вы увидите, как преобразуются адреса вида Please login or register to view links в адреса вида Please login or register to view links на сайте MyRusakov.ru. 1-й урок. Добавление таблицы. Хранение соответствий URI-адресов и псевдонимов страниц будет храниться в отдельной таблице, и её созданием мы и займёмся в данном уроке. 2-й урок. Создание необходимых классов. В этом видео мы создадим дополнительные классы, отвечающие за обработку псевдонимов. 3-й урок. Редактирование маршрутизатора. В этом видео мы запустим механизм ЧПУ-ссылок, отредактировав наш маршрутизатор. [center][/center] Год: 2014 Язык: русский Формат: iso Размер: 7.92 Gb [center]Скачать Создание движка на PHP и MySQL 2.0 (Михаил Русаков) [2014][/center] Цитата | |
Категория: Разное |
Просмотров: 153 |
Добавил: gorodoksmol
| Теги: |
Всего комментариев: 0 | |