# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
На этом уроке мы создадим проект php и убедимся в наличии библиотеки GD Отчёт отправил: 2773. Никита Выполнено за 15 мин. [Показать отчёт] Научился: Уже знаком с OpenServer'ом. Вот начинаю изучать потихоньку php. Библиотека для работы с изображениями найдена и включена. Сложности: Сложностей не возникло. Все подключилось и работает. Поставил последнюю доступную версию Php (7.2 x64). |
|||||
2 | Надпись - в картинку |
1 тест |
|||
На этом уроке мы создадим изображение средствами PHP, выведем на нем текст и поработаем с параметрами Отчёт отправил: 2773. Никита Выполнено за 17 мин. [Показать отчёт] Научился: Создавать изображение и модифицировать его средствами Php. Сложности: Сначала выдавалась какая-то ошибка, мол уже header объявлен. Потом закрыл тег php, обновил - все заработало. |
|||||
3 | Открытку в студию |
|
|||
На этом уроке мы научимся сохранять изображение в файл и делать надпись на готовом изображении Отчёт отправил: 2773. Никита Выполнено за 12 мин. [Показать отчёт] Научился: Загружать свою картинку и рисовать на ней! Круто получается) Сложности: Сложностей не возникло. |
|||||
4 | Создание базы данных |
|
|||
На этом уроке мы создадим базу данных для создания и хранения наших изображений Отчёт отправил: 2773. Никита Выполнено за 15 мин. [Показать отчёт] Научился: Создал таблицу в HeidiSQL. Я немного изменил названия полей, а также сделал поле для подписи картинки (у меня это поле sign - "подпись", в видео это поле "out_text") имеет тип text. Чтобы прописать тип text я в колонке "по умолчанию" выбрал пункт "нет значения по умолчанию". Сложности: Сложностей не возникло. Поработает в HeidiSQL, это интересно для меня ) |
|||||
5 | Рефакторинг & connect |
1 тест |
|||
На этом уроке мы подготовим наш проект к работе с изображениями и подключимся к базе данных Отчёт отправил: 2773. Никита Выполнено за 32 мин. [Показать отчёт] Научился: Создали пользовательскую функцию, тем самым сделали небольшой рефакторинг, а также отдельный файл Php для подключения к БД. Я также в строке для подключения прописал еще имя базы данных и порт. Сложности: Пробовал сделать в php вызов функции с указанием параметров, как в C# знаете. Можно явно задать параметры и указать для них значения. Как я понял, такого в php нет. Мы же создали в функции для установки текста и картинки параметры и задали им значения по умолчанию. А получается, что при вызове функции я, например, хочу поменять только надпись (второй параметр), мне придется первый заново перезаписывать? Как-то не очень получается. Мне C# больше по душе в этом плане :) А чем отличается прямой слеш от обратного? Я в пути для картинки сделал так "Images/", то есть через прямой слеш. А на видео через обратный, да еще экранирование идет. Но у меня все работает :) |
|||||
6 | Правильные шрифты |
|
|||
На этом уроке мы научимся применять разные шрифты в наших текстоизображениях, решим проблему с отображением русских букв и реализуем водяные знаки Отчёт отправил: 2773. Никита Выполнено за 16 час. 19 мин. [Показать отчёт] Научился: Урок получился отличным, но у меня эта функция imagettftext вообще черный экран вывод (на скриншоте видно). Чего я только не делал, все равно ничего не получилось. С imagestring все хорошо отрабатывает. А тут прям затык какой-то. Я и версию Php менял, не помогло. Проблему решил, поставил версию Php 7.0 и Apache для 7.0 тоже поставил, тогда все заработало! Ура! Сложности: Заставить работать функцию imagettftext. Оказывается, она не со всеми версиями php хочет работать. |
|||||
7 | Несколько SQL-запросов |
1 тест |
|||
На этом уроке мы создадим несколько SQL запросов, которые нам понадобятся в дальнейшем Отчёт отправил: 2773. Никита Выполнено за 3 час. 26 мин. [Показать отчёт] Научился: Повторил структуру запросов на добавление, удаление и изменение данных в таблице. Сложности: Сложностей не возникло, все отлично работает. |
|||||
8 | Форма Edit |
1 тест |
|||
на этом уроке мы реализуем форму для добавления и редактирования записей в базe Отчёт отправил: 2773. Никита Выполнено за 3 час. 20 мин. [Показать отчёт] Научился: Классно получилось, можно теперь напрямую будет задавать имена картинок, подписи и сами картинки устанавливать. А потом все записывать в базу данных. Сложности: Хотел сделать, чтобы при выборе картинки она отображалась еще. Но так и не получилось реализовать. Знаний не хватает. Я с помощью JQuery получил выбранное значение в select'е, то есть имя картинки. А как теперь это все в теге img у атрибута source задать не понимаю. На скриншоте видно (рисунок 1), что в source получается вывести имя выбранного пункта, но как теперь объединить пути - я не знаю. Может, кто знает, подскажет?) Я понимаю, дело элементарное, кто знает :) Я сделал, но как-то коряво. |
|||||
9 | Добавление данных в БД |
|
|||
На этом уроке мы добавим данные в БД из формы
Отчёт отправил: 2773. Никита Выполнено за 56 мин. [Показать отчёт] Научился: Добавлять введенные в полях данные из формы в базу данных. Сложности: У меня сразу при перезагрузке страницы выводилось, что запись добавлена. В видео идет проверка на на наличие данных в суперглобальной переменной $_POST функцией isset. У меня же она почему-то всегда возвращала true, я и кэш чистил, и страницу обновлял (Ctrl+F5), все равно ни в какую. Оттого у меня в БД id последней добавленной записи = 6. Поэтому я сделал другую проверку с помощью функции empty и все заработало как надо. |
|||||
10 | Таблица записей в index |
|
|||
На этом уроке мы выведем полученные данные в таблицу
Отчёт отправил: 2773. Никита Выполнено за 41 мин. [Показать отчёт] Научился: Красиво получается :) Сложности: Сложностей не возникло. |
|||||
11 | Удаление записи |
1 тест |
|||
На этом уроке мы реализуем алгоритм удаление записи из БД и очистим наши данные от ненужных записей Отчёт отправил: 2773. Никита Выполнено за 17 час. 59 мин. [Показать отчёт] Научился: Удалять записи из БД. Сложности: Разобраться с удалением. Забыл поставить знак "=", когда передавал значение из переменной и отсюда у меня поле id всегда было равно null. |
|||||
12 | Редактирование - получение данных |
|
|||
На этом уроке мы получим данные для редактирования по GET-запросу и выведем их в ассоциированный массив row Отчёт отправил: 2773. Никита Выполнено за 24 мин. [Показать отчёт] Научился: Я оставил параметр с именем 'id', не стал переименовывать на 'id_'. Также организовал заполнение полей для ввода, когда мы выбираем картинку на редактирование. Для этого использовал наш "старый" код, который мы писали раннее для добавления картинки в БД, я его немного изменил. Сложности: Сложностей не возникло |
|||||
13 | Редактирование - данные на форму |
1 тест |
|||
На этом мы передадим наши данные, полученные посредством $_GET запроса на форму Отчёт отправил: 2773. Никита Выполнено за 47 мин. [Показать отчёт] Научился: Действительно с select'ом немного посложнее было. Ну ничего, получилось же! Сложности: Все отлично отрабатывает! |
|||||
14 | И добавлять, и редактировать |
|
|||
На этом уроке мы научим нашу форму быть и для добавления, и для редактирования записей
Отчёт отправил: 2773. Никита Выполнено за 15 мин. [Показать отчёт] Научился: Создавать массив и инициализировать его Сложности: Сложностей не возникло. Урок получился легким) |
|||||
15 | Сохранение записей и изменений |
|
|||
На этом уроке мы реализуем механизм сохранения данных о картинке
Отчёт отправил: 2773. Никита Выполнено за 1 час. 0 мин. [Показать отчёт] Научился: Делать редактирование, удаление и добавление записей. Сложность в том, что надо это все связать воедино, по отдельности все работает как бы, а когда начинаешь уже условия добавлять (если id положительное, делай то-то, если id отрицательное - то-то), тут и возникают всякие ляпы. Но ничего, все работает! Сложности: Найти ошибки и исправить. |
|||||
16 | Просмотр полученных изображений |
|
|||
На этом уроке мы будем просматривать изображения из базы в отдельной вкладке браузера Отчёт отправил: 2773. Никита Выполнено за 42 мин. [Показать отчёт] Научился: Сделали теперь нашу коллекцию картинок и надписей к ним динамичную! Ура! Сложности: Опять из-за невнимательности куча ошибок - то знак вопроса забуду поставить перед именем переменной, то в запросе немного напортачу. Но в конце концов все получилось вывести! |
|||||
17 | Загрузка фоновых изображений |
1 тест |
|||
На этом уроке мы с вами реализуем механизм загрузки файлов фоновых изображений в проект Отчёт отправил: 2773. Никита Выполнено за 36 мин. [Показать отчёт] Научился: Все получилось! Очень классный видеокурс, мне понравился! Сложности: Сложностей не возникло, все получилось. Единственная проблема, иногда пропадает соединение с MySQL и нужно просто перезагрузить страницу для этого. Ругается на файл connect.php, на строку подключения. Непонятно, что там не так. Имя БД, пользователь, пароль, хост и порт указаны верно. |
|||||
18 | VIP Самостоятельная работа |
|
|||
Задание к данному уроку - самостоятельная работа на свободную тему, где вы можете реализовать любые ваши самые смелые идеи по данному проекту (можете делать какие угодно варианты - поиграть с прозрачностью, углом наклона текста, добавить любые поля в базу данных - в общем что угодно). |
|||||
19 | ФИНАЛЬНЫЙ УРОК |
без видео |
|||
Сделай видео-презентацию своего графического проекта. | |||||
Итого: 19 видеоуроков |
3 час. 01 мин. 7 тестов |
6 чел. | |||
Финалисты: Dmitry Sinitsin, Tekashnik, Yaroslav, Николай Миролюбов, Николай Денисов, Tom . |