Тестовое задание Techart.Web

В базе данных MySQL дана таблица новостей news со следующими колонками:

  • id: идентификатор новости
  • date: дата новости в формате DATETIME
  • title: заголовок новости
  • announce: краткое содержание новости
  • content: детальное содержание новости
  • image: имя файла изображения

Требуется создать мини-сайт на PHP / MySQL / HTML / CSS с постраничным выводом новостей и показом отдельной новости.

Сортировка новостей - по дате в обратном порядке
(новые сверху).

Дамп базы данных и иллюстрации к новостям находятся в этом ZIP-архиве ( ~1.97MB )

Дизайн-макеты страниц размещены на сервисе Figma.

Пояснения к заданию:

  • Страницы верстать нужно как можно более точно в соответствии с макетами.
  • Новости размещаются по четыре на странице.
  • В постраничном навигаторе кнопка со стрелкой (переход на следующую страницу) не должна присутствовать на последней странице.
  • На каждой странице списка новостей есть блок с последней новостью (последней в базе, а не на конкретной странице). Фоном для блока является иллюстрация последней новости, растянутая по ширине страницы и обрезанная в нужной пропорции.
  • Иллюстрация на детальной странице может иметь любые соотношения сторон и должна сохранять их (не подгоняться под указанные в макете).
  • Желательно реализовать код на архитектуре MVC с использованием ООП.

Требования:

  • Использование сторонних фреймворков и CMS не допускается.
  • Готовый код размещать на Github или на любом другом аналогичном сервисе.
  • Необходимо дать ссылку на работающий сайт с исполненным тестовым заданием, ссылку указать в файле README.md. Если такой возможности нет, то следует сделать два скриншота: 2-я страница списка и детальная страница новости с идентификатором 3 (скриншоты также разместить в репозитории на Github).

По срокам выполнения задания жестко не ограничиваем, для нас важнее качество выполнения, а не скорость. Если будут дополнительные вопросы по заданию, обращайтесь на hr@techart.ru.

Отправить решение

Ваше решение принято! Мы свяжемся с вами в течение 2 рабочих дней. По выполненному заданию мы в обязательном порядке даем обратную связь.