А можно взглянуть на : W:\html\meridian\www\modules\main\control.php on line 60 ???
Я давно уже не пользовался функциями mysql_*, но убежден, что ссылку на подключение к базе нужно передать во что-то, что находится тут : W:\html\meridian\www\modules\main\control.php
Eazy-E, позволь поинтересоваться, а тебе сколько лет если не секрет?
Ты слова знакомые перечислил?
Eazy-E пишет:
Уже все есть. Memcache, Xcache, JSON, files
Причем тут эти вещи вообще?
Memcache - хранит данные по типу "ключ-значение" в оперативной памяти и хранить там кэш шаблонов не целесообразно.
XCache - ускоритель на подобии eAccelerator.
JSON - Текстовый формат обмена данными между языками основанный на Javascript.
Files - Теряюсь в догадках, что это такое Суперглобальный массив $_FILES ?? А он то тут причем?
Ничего не зря! Всё равно как я понял список имен доступных шаблонов хранится в базе, и даже если человек зашел на сайт впервые, никто и в мыслях не держал регистрироваться на этом ресурсе, всё равно ваше приложение с каждым обновлением страницы лезет в базу, дабы выдать без того понятную вещь!!! default.tpl - или как-то так !! Так что к вашему "коду" этот случай тоже вполне применим, хотя и не с таким размахом, как мне с пьяну показалось...
Да, кстати
"SELECT * FROM '....' ...." - по моему - это моветон..
fullzero, отлично! Правда я не знаю, что это... Значит попытайтесь в вашем Uniqway Poetic найти что-то подобное, самое главное если кодировать в utf по БЕЗ BOM!
Eazy-E, короче я скоро перестану вам, что либо подсказывать, это утомляет уже...
Вы ничего не слушаете, не читаете, а только пишите "говнокод" и приходите к нам c этими филькиными грамотами и спрашиваете "Как?"...
Вы либо прочтите, что-то сначала, либо делайте как умеете в процедурном или какой у вас там еще на вооружении стиль и забудьте о всех этих MVC, HMVC, паттернах, парадигмах и всем сопутствующем - значит рано вам еще за них браться, всё с опытом придет в т.ч и понимание всего этого...
Я вам двумя постами выше писал, что именно [М]одель в h[M]vc и в [M]vc должна заниматься всякими подключениями к базе, а вы тут присылаете контроллер+модель+view-всё-в-одном, потрудитесь хоть советы читать которые вам дают тут! :
$result=$db->query('SELECT * FROM 'pages' LIMIT 1');
Ну а тема хранения ШАБЛОНА в базе данных это вообще отдельный длинный холивар...
Только воистину мало-мальски понимающий в этом вопросе человек может так сделать...
В конце концов, пользуйтесь хотя бы гуглом "Где лучше хранить html шаблоны для php приложения?"
Думаю масса слов-подсказок сразу выпадет :
Folder Template, View ... (Добавление)
Вот представьте любое высоконагруженное приложение, представили? А теперь скажите, действительно стоит ~N тысяч раз в секунду(предположим такое кол-во обращений к серверу у нас из-за присутствия ~N тысяч человек online) обращаться, как вы думаете за чем? - За шаблоном! А куда обращаться? - В базу для любого кто обновил страницу, что таки не является самым быстрым и рациональным способом???
Печаль... Если вы уж так хотите html шаблоны разные, темы там всякие, почитайте что нибудь про шаблонизаторы, на этом форуме не раз уже их обсуждали, я даже какие-то свои храмые-наработки по этому поводу показывал. Если погуглить можно найти такие херовины как "Шаблонизатор Smarty"..
принцип MVC еще и в том, что модель содержит только логику, а view негде по сути взять html код который никак не должен приходить из модели или быть в контроллере , по этому происходит отделение php от html, php - модель, и возникает шаблон содержащий html код, а класс view загружает нужный в зависимости от данных модели и контролера и много еще чего.
Принцип шаблонов в том, что в корне сайта как правило лежит папка Template или View или как захотите называйте и в ней эти самые шаблоны страниц. Внутри контроллера когда это становится необходимо класс View открывает нужный шаблон, парсит там может какие-то тэги по типу как у вас '{content}' => $content, может какой-то свой нативный синтаксис запиливает, может даже сохраняет "скомпилированный" предыдущими действиями результат куда-нибудь в папку tmp под странным именем (4fc6e6ae39388.tmp), а при следующем обращении вместо того чтобы парсить всё снова, дабы не терять драгоценные доли секунд процессорного времени, он загружает "скомпилированный" файл из этой папки - сие чудо называется кэш!
Как это я вас не понял, если это я вам и рассказал про этот HMVC... Сути дела это не меняет, HMVC отличается от MVC тем, что любой контроллер в HMVC может запросить результат работы любого другого контроллера!
Т.е как-бы контроллер Users, может обратиться к контроллеру Login, и спросить у него форму авторизации если она ему понадобится ))
Грубо говоря, Users сам вызовет внутри себя контроллер Login, внутри Login отработают его модели, которые определят, может капчу пользователю пора в форму запилить, а то он тут с ошибками в паролях частит уже, далее Login отработает, вернет всё, что наработал контроллеру который и запрашивал результат его работы(Users), а Users передаст этот хлам во View который в свою очередь напечатает всё пользователю... - Я хз как тебе объяснять, по этому на пальцах уже пытаюсь )) (Добавление)
Eazy-E пишет:
"News" состоит из: NewsController, NewsModel, NewsView. Чем не модуль-то?
etoYA, да сам define очень медленная херовина, просто если ты держишь в define'ах всякие там конфиги или языки, это ужас как медленно будет работать когда их у тебя накопится по бане... Я собственно по этому и показал..
Ну, а так, DelphinPRO абсолютно прав! На хабре давным давно статья была, про скорости всякие
define и прочей мерзости где люди умудряются конфиги хранить, ini файлы лидировали по скорости работы с большим отрывом, а define чуть ли не самым медленным оказался )