SonyaPolyakova
@SonyaPolyakova
Увлекаюсь программированием и web-разработкой.

Как создать приложение — задачник (mvc приложение на чистом php)?

Здравствуйте! Сердечно прошу вас помочь мне в решении поставленной задачи!
Необходимо создать приложение-задачник.
Задачи состоят из:
- имени пользователя;
- е-mail;
- текста задачи;

Стартовая страница - список задач с возможностью сортировки по имени пользователя, email и статусу. Вывод задач нужно сделать страницами по 3 штуки (с пагинацией). Видеть список задач и создавать новые может любой посетитель без авторизации.

Сделайте вход для администратора (логин "admin", пароль "123"). Администратор имеет возможность редактировать текст задачи и поставить галочку о выполнении. Выполненные задачи в общем списке выводятся с соответствующей отметкой "отредактировано администратором".

В приложении нужно с помощью чистого PHP реализовать модель MVC. Фреймворки PHP использовать нельзя, библиотеки - можно. Этому приложению не нужна сложная архитектура, решите поставленные задачи минимально необходимым количеством кода. Верстка на bootstrap, к дизайну особых требований нет.


С помощью фреймворков я могу реализовать данную задачу, но без них увы я бездарна((
  • Вопрос задан
  • 1829 просмотров
Решения вопроса 1
glaphire
@glaphire Куратор тега PHP
PHP developer
Не бездарна, просто не уделили еще достаточно времени пониманию работы приложений и реальному ООП) Но этим стоит заняться - книги есть, видеокурсы есть.
Примеры приложений можно поискать.
Что здесь нужно?
1. Точка входа (index.php), которая будет перенаправлять на реальную страницу
2. Способ сопоставления роута с реальным экшеном контроллера
3. Группа классов контроллеров
4. Группа классов моделей (сущностей)
5. Группа шаблонов (вьюх)
6. Другие группы классов (сервисы, модули и т.п.) по необходимости
Если совсем трудно без фреймворка, попробуйте влоб написать процедурный php для решения задачи, потом вычленять код в методы и классы с конкретным предназначением. Почитайте в документации знакомого Вам фреймворка раздел про жизненный цикл запроса и разберите все по полочкам. Успехов!)
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
php666
@php666
PHP-макака
В приложении нужно с помощью чистого PHP реализовать модель MVC
Глупая тестовая задача. Я писал с чистого листа свой собственный MVC-фреймворк на PHP и я откровенно скажу, что до того момента, пока код не стал более-менее идеальным MVC, ушло, мягко сказать, очень много времени.

Новичок не потянет такую задачу - это будет абсолютно неправильное наколенчатое решение. MVC - это не просто разделение по файликам кода. Это концепция потянет за собой необходимость в доменных объектах, те в свою очередь нуждаются в CRUD, т.е. в ORM, там надо копать AR или DataMapper. Новичок не сможет грамотно отделить представление от логики контроллера или логики модели, для пагинации нужен сервис, для сортировки нужен сервис, для вывода объектов нужна коллекция (опять же, ORM).

Кто дал эту задачу?
Ответ написан
@Akyla73
Разработчик игр
Девушка врет и не краснеет про то, кто ей дал задачу. Это тестовое задание выдается одной организацией, занимающейся php разработкой. Чекайте компанию BeeJee. Девушка видимо решила что можно как-то нахаляву выкрутиться, чтобы за нее задачку решили. Правда не подумала над тем, как сможет работать на работе, в которой абсолютно ничего не смыслит.
Глядя на копипаст тестового задания, создается только такое мнение. "Смотрите задание, решите за меня, я нипанимаю, но мне наада"

Когда просят помочь, обычно предоставляют проблемный код и интересуются, что сделано не так. Подробно описывают свою проблему. Я здесь ничего подобного не вижу.

Попробуй сначала разобраться сама. Не осиливаешь, и не берись. Бери свой уровень и свою область деятельности. И пожалуйста, не суйся туда, в чем ничего не смыслишь. Не позорь себя и не позорь женщин-программистов. На таких как ты и составляют общее представление о способностях женщин программировать.
Ответ написан
hack504
@hack504
Делаем три директории (Controller, Model, View) в папку Controller кладем два файла (Default.php, Admin.php) с соответствующими классами, в директорию View делаете папки под клиента и админку, туда же шаблоны верстки (header.php, body.php, footer.php, template_message.php ... и т.д.). В директорию Model кладете Task.php - тут реализуете и методы пагинации соответственно. Вообще во всех файлах делаете что-то более менее похожее на Фреймворк. Самое интересное - это index.php - тут создается соединение с БД и запускается нужный экшен контроллера - как определить нужный? Ну почитайте например про ЧПУ и Роутинг PHP.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы