Ответ: Обработчик CMS в одном файле
Буду разбираться... Я вот еще что хотел спросить, вот например взять cms юкоза, там к примеру в каталоге статей на страницы с материалом и описанием ссылки такого типа:
сайт.ру/publ/12-1-0-19 сайт.ру/publ/12-1-0-22 сайт.ру/publ/12-1-0-26 сайт.ру/publ/12-1-0-27 сайт.ру/publ/12-1-0-29 сайт.ру/publ/12-1-0-88 Эти страницы формируется через get запрос в одном файле publ.php? Или у каждого из адресов есть отдельная страница (файл .php или .html), судя потому как индексирует поисковик то наверное да. Или я ошибаюсь? |
Цитата:
MVC часто является сильным блоком от простоты, когда тебе тупо нужно обозначить route и там же ответить. Не все запросы требуют загрузку из бд, не все требуют View'а вообще. Я уже не говорю о взять любую MVC модель, и перевезти на single-page основу, будет куча проблем. Придерживаясь простоты, всё что нужно - это очень простая самодельная ORM для только валидации, и возможность обозначения route'ов и тамже их контроллеров. - Всё что нужно для полного счастья. Любая система на основе MVC доказала себя как enterprise и те кому не пофиг, стараются с этим не связываться. Взять например Wordpress который не следует MVC, а является гибритом - именно то к чему приходит любой пользователь MVC с долгой жизнью проекта. И значит вот у них из Core Developer команды уходят люди, постоянно, т.к. это убожество с которым невозможно им работать. Один из явных примеров: Ghost, где ребята хотели всего-то сделать другой WYSIWYG редактор, с Markdown'ом, и обосрались, в итоге нафиг ушли из компании и сделали за не продолжительный срок в разы мощнее блог движёк чем Wordpress. Чище и проще. Всякие MVC, PAC, MVP, MVVM, и чё там ещё, это как "рецепт" для тех кто своей головой по задачи не думает. В команде хороших ребят, есть явные бизнес и тех. задачи, сядьте, обсудите и своими мозгами думая, используя примитив и простоту делайте то что нужно, не заморачиваясь системами паттернов и правилами "как нужно делать приложения". Потому что это всё продукт enterprise, и создан решать конкретную проблему тупости разрабов в enterprise мире. В мире мозгов - этой тупости поменьше, следственно и такие решения нафиг не нужны. Цитата:
Кури "pretty url". |
Ответ: Обработчик CMS в одном файле
moka, красиво написал, прям вау. (не сарказм)
|
Ответ: Обработчик CMS в одном файле
Цитата:
если бы это был файл через который генерируется, то скорее всего было бы так. Цитата:
|
Ответ: Обработчик CMS в одном файле
Используя rewrite функционал в практически любом нормальном веб сервере (apache, nginx, и т.п.) можно модифицировать любой запрос (url) до того как он перенаправится на обработку скриптом (php в данном случае).
Одна из техни Pretty URL, когда все запросы перенаправляют на один файл index.php, и уже в index.php далее парсят всю строку запроса в аргументы, и исходя из них подбирается подходящий route файл и дальше, по цепи логики. Короче, не нужно куча файлов, и не нужно никаких директорий, это всего абстрактные записи - то как выглядит url не имеет ничего общего со структурой директорий/папок. А лишь служит данными по которым фильтруются данные в базе, и всё по одному файлу шаблону выводиться как ответ. Бля, нихера не "короче" вышло. В общем хз как короче - иди в общем кодить, и меньше вопросы задавай, больше экспериментируй - только так и научишься. В интернетах меньше пользы чем в практике и собственных ошибках/успехах. Такого рода как у тебя вопросы, не возникают у того кто хоть чуток нормально поигрался с php, apache и т.п. следственно, не трать чужое время - иди и программируй. |
Ответ: Обработчик CMS в одном файле
Начал писать код, через единую точку входа, вот index:
Код:
<?php Код:
<?php А вот и код в браузере. Что это такое, и как его исправить? К тому же всё в перемешку, хотя код указан нормально. |
Ответ: Обработчик CMS в одном файле
Во первых учитывай что после ?> новая строка - будет как новая строка в HTML.
Также не используй echo для вывода HTML тегов, вообще. Закрываей php тег ?> и далее пиши нормальный html со встравками типа <?=$variable?> и тому подобными. А лучше найди нормальный templating язык. Также TAB'ы (indention) для кого придумали? Код читать когда каждая строка слева не реально, это относится к html'у также и к php. Экспиреминтируй больше. Ты тут выложил код хрен знает что, конечно у тебя там будут проблемы, т.к. там каша. Увидел проблему - бери простой прототип пиши и смотри там. Экспериментируй больше чем пиши на форуме. |
Ответ: Обработчик CMS в одном файле
php теги я закрываю. Пробовал выводить страницу через include, та же фигня. А на счет indention, мне удобней читать код когда всё с лева.
|
Ответ: Обработчик CMS в одном файле
Цитата:
Это ты не закрыл, это ты выводишь html используя php. Цитата:
|
Ответ: Обработчик CMS в одном файле
echo у меня закрыт.
|
Ответ: Обработчик CMS в одном файле
Ты видимо не понял.
Цитата:
|
Ответ: Обработчик CMS в одном файле
Я же написал, при использовании include та же фигня.
|
Ответ: Обработчик CMS в одном файле
Вот тебе пример, изучай (запусти с сервера):
PHP код:
|
Ответ: Обработчик CMS в одном файле
Вы меня наверное не слышите. Причем здесь этот код...
|
Ответ: Обработчик CMS в одном файле
Всё, я уже и сам разобрался, с 25 раза перебирая каждую функцию кода выяснил в чем ошибка - кодировка была UTF8, поставил без BOM и сразу всё нормально заработало.
|
Часовой пояс GMT +4, время: 20:02. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot