Создать на php+html библиотеку обучающих видеороликов

Бюджет: по договоренности
Создать на php+html библиотеку обучающих видеороликов

Цель: Создать на php библиотеку для размещения ссылок с отображением видео загруженных на яндекс диск и просмотра обучающих видеороликов.
      Планируется база данных видеоуроков на MySQL
      Создать на PHP страницы вывода данных из БД SQL в структурированном виде дерева.

Средства: MySQL, PHP, Bootstrap(или Semantic UI или аналогичные, но не сложные)

Должны быть следующие страницы:
1. Страница отображения видео, в виде дерева (слева дерево (3-4 уровня)), справа список видео
2. Минимальная админка где идет добавление и удаление видео. 
   Добавление – там только строка с адресом ЯндексДиска видео и кнопка добавить. 
   Удаление – таблица добавленных записей и кнопка минус.
   Правка – только добавление описания к видео
3.Страница поиска. На странице 1 есть строка поиска и кнопка [Искать]. Нажали [Искать] – открылась страница с результатом.

Добавление видео :
При добавлении в строку ввода ссылки я указываю адрес ЯндексДиска файла, нажимаю кнопку [Добавить] идет обработка этих ссылок, (важно!) если ссылки еще нет – добавляется, если была ранее- пропускаем.
Вот тут показано как вручную это делать, что должно быть будет в итоге
www.youtube.com/watch?v=Z...
blogmann.ru/vstavka-na-sa...

Интерфейс желательно на нормальном CSS движке
BootsTrap
На самом новом
getbootstrap.com/
themes.getbootstrap.com/

База данных состоящая из таблиц :
1. DataVideo – это то, что добавляется по кнопке [Добавить]
   Поля таблицы 
     ID – уникальный идентификатор
     PathYD – адрес видео в ЯД – строка запроса ЯД, что вводится в строку при добавлении
       Пример yadi.sk/i/Pxgjw5kX3QDfzJ
     Discription – наименование файла видео, вытащенного из обработки описанной в видео выше 
       Пример. Находится <div class="file-name" data-reactid="46">Календарь. Связка по НЗ.avi</div>
               Оттуда забираем "Календарь. Связка по НЗ" 
               расширение avi не нужно 
     DateVideo – время создания урока
     Metadata – вытащенное видео.
     Comment – то, что добавили в описание при правке

     Discription – представление (у нас идёт в виде текста, например: Документы.Наряд-Заказы.Выбор работ)
     Представление нужно разбирать при отображении на странице и представлять деревом.

   Берется файл и по строкам открывается ЯД. Оттуда вытаскивается путь до видео и добавляется в БД.

2.TreeVideo
     ID – уникальный идентификатор
     Parent_ID – ссылка на родителя
     Name – наименование элемента
     DataVideo_ID – ссылка на DataVideo. Ссылка только у тех записей, которые непосредственно указывают на картинку. Листья. Последний элемент всегда лист. 

Пример разбора добавления :
Добавляем yadi.sk/i/Pxgjw5kX3QDfzJ
Оттуда извлекаем "Календарь. Связка по НЗ.avi"
Получаем Календарь. Связка по НЗ
Точка – признак разделения.

11.22.33.avi
#11
##22
###33


Календарь 
  Связка по НЗ 

DataVideo
=========
ID PathYD Discription DateVideo Metadata Comment
-- ------ ----------- --------- -------- -------
1 yadi.sk/i/Pxgjw5kX3QDfzJ Календарь. Связка по НЗ 16/10/2018 Тут ссылка на видео для вставки в код То, что добавили в описание при правке

TreeVideo
=========
ID Parent_ID Name DataVideo_ID
-- --------- ---- ------------
1 Null Календарь Null
2 1 Связка по НЗ 1

Пример удаления:
Удаление – вначале удаляем непосредственно листья TreeVideo.ID = 2 . Потом DataVideo = 1. Потом смотрим ветки без листьев TreeVideo.ID = 1


Примеры оформления
themes.getbootstrap.com/p... 
Слева дерево
Справа видео выделенное
Просто и наглядно.

Еще варианты дерева
semantic-ui.com/introduct...
Это аналог Bootstrap
semantic-ui.com/

Ждём ваших предложений и оценок!
Опубликован 29.11.2018 в 14:52 Последнее изменение: 29.11.2018 в 14:54

Выберите способ верификации:

Обновите страницу после прохождения верификации.