Отпишитесь пожалуйста "правильно ли я понял MVC"

xVansX

Новичок
Почитал много статей по нету. Решил написать CMS через MVC

Хотелось бы расширять систему а то писать каждый проект как то уже не интересно.
Во вложении мое творение.

Буду рад вашим советам, заранее спасибо.

Система запускает главный контроллер и если в адресной строке /phonebook/view то выведет телефоны
 

Вложения

  • 4,1 KB Просмотры: 23

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Ну пока что расширять там нечего, View как такового там нет. Не считая мелких косяков. Особенно порадовал define('d', '/'); Про DIRECTORY_SEPARATOR ты явно не слышал)
 

xVansX

Новичок
Ну скажите правильно или нет. Система там у меня на функциях написана
и работает ?module = выполняет include ($module)
а &action= запускает функцию call_user_func($action);
освоил пока что Объекты доступ к свойствам, статистические методы и классы
Абстрактные классы и методы, интерфейсы, конструкторы, наследование.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Что правильно или нет? Что свое писать начал? Или что?

Сейчас я не понимаю твоей логики, точнее зачем ты сделал view.php в модуле? У тебя нет шаблона, нет view, и то, что ты пишешь phonebookV::displayPhone(); это не шаблонизация, а простой вывод в браузер.

Поэтому советую взять какой-нибудь вреймворк и посмотреть как там сделаны view, то есть шаблоны. То, что там есть присвоение данных, и последующий их вывод в нужном месте в файле шаблона.
 

xVansX

Новичок
Ты имеешь в виду спарсить HTML файл заменить в нем теги которые я прописал, на значения полученные от модели?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
не html файл, а файл с html разметкой, в котором в нужных местах стоит что-то вроде {$variable} или <?=$variable?> или <?=$this->variable?> это уже как кому нравится. Если не хочется писать свой шаблонизатор - бери smarty.

Далее к контроллере будешь писать:

$this->smarty->assign('variable', 'value'); чтобы значение присвоить

и

$this->smarty->display('path/to/template/file.tpl'); чтобы вывести темплейт с переменными в нем
 

xVansX

Новичок
Я его использовал
А вот если я правильно понял главный контроллер это ядро?
 

Духовность™

Продвинутый новичок
То что ты написал - результат прочтения статей. Дай угадаю - ты читал статью "MVC для начинающих и интернета в частности?" и на базе их уроков написал то/, что в архиве лежит?
 

HraKK

Мудак
Команда форума
освоил пока что Объекты доступ к свойствам, статистические методы и классы
Абстрактные классы и методы, интерфейсы, конструкторы, наследование.
85% программистов это не освоили. Из 25 человек за прошлый месяц что приходили не один не освоил это полностью и только 2 на сносном среднем уровне. Но конечно все написали как минимум отличное знание OOP, OOD, Design Pattern etc.
 

tz-lom

Продвинутый новичок
гемоглобин
определение в википедии/гугле
от себя - иногда это дисциплина специальной олимпиады :D
 
Сверху