[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Структура сайта
dmitriy2294
Т.к. я новичек, у меня скоро бошка лопнет, вопросов невероятное количество, ну думаю раздел этот для таких и создан, и знатокам в удовольствие поделиться знанием)
И вот сейчас появился вопрос, http://subscribe.ru/archive/comp.edu.phpbu...2/18215251.html вот есть статья небольшая, если не лень просто пробегитесь быстренько по ней чтобы поймать суть. Это не законченная статья, и второй части видимо просто нет. Хотелось бы узнать как делать такую навигацию при которой страница формируется динамически с информацией из БД, и не нужно создавать много документов под разные разделы.

История такая: прочитав на irbis-team про то как по кускам резать шаблон, потом всё это собирать инклудами я подумал что это и есть динамический PHP сайт, тот самый сайт который нельзя создать на html и для чего я собственно php постигаю, а что, тут одни плюсы, легко редактировать отдельные блоки(изминил 1 файл и всё, отображение поменялось везде), динамично, простенько, да, есть минус, для каждого раздела всё же надо создавать отдельный документ (раскопировал index.php со всеми инклудами, и осталось забить контентом каждую), а что это это всё же лучше чем один только html где нужно было открывать и редактировать !каждый! файл. Я сделал вывод что это и есть движок сайта, его структура, костяк)

И тут узнаю что даже вовсе !не обязательно создавать много страниц, что все разделы выводятся в одном файле из БД при помощи функций.

Так что же в конце концов является полноценным php сайтом??? Запутался..

Ещё запутался в понятиях CMS, MVC, движок сайта, ядро сайта, шаблонизатор. Пожалуйста, уберегите от самоубийства, хотя бы просто объясните что значат эти термины, я то думал что то о чём написанно на ирбис тим (про резку шаблонов) и является движком)

изначально я вообще хотел найти статью про то как должна быть организована структура сайта(я то имел в виду под словом структура то - какие каталоги должны быть созданы (img, js, css) и прочее в этом роде, хотел увидить аккуратные структуры, а гугл мне вывел ссылки на то что я описал выше..

Понимаю, может быть спешу, но покой уже потерян)
inpost
dmitriy2294
CMS - админка сайта, в переводе: Система управления контентом. Контент = информация. подправил текст, изменить содержание блоков. Сделал форму, которая редактирует на сайте новости или создаёт новые новости, старые удаляет, то у тебя и CMS.
Ядро сайта - все базовые настройки и подключения. К примеру ты указываешь кодировку в index.php (он же является файлом ядра) или включаешь сессию. И т.д. стандартные настройки. Его в связки с MVC можно трактовать как "движок", хотя такого определения, собственно, и нет. Каждый как хочет, так и понимает.
MVC - модель, вид, контроллер. Точного определения не даст никто, потому что MVC каждый понимает как хочет, отсюда множество вариантов работы. Допустим ты решил, что хочешь разделить ПХП и HTML на 2 файла, типо так удобнее работать верстальщику в одном файле, а программисту в другом, а потом своё разделение и назвал как MVC, то есть твой личный шаблон проектирования.
MVC - блок-схема, мы разделяем на логические файлы, чтобы не городить все действия в одном. В целом мы получаем такой вариант: VIEW (вид) - это наш HTML код, в нём мы содержим только HTML и частично ПХП, только echo, print, if-else, foreach, for, то есть ПЕРЕБОР, УСЛОВИЯ и ВЫВОД данных, никаких других операций.
Теперь создаём файл №2 для других операций, к примеру ОБРАБОТКА входящих данных, работа с базой данных. Любые действия не относящиеся к ВЫВОДУ данных. Добавили запись в БД, выборку сделали. Это всё мы поместили в контроллер (CONTROLLER).
И последнее, модель, некоторые считают, что контроллер необходимо ограничить от работы с БД и поместить в модель, в моём же понимании модель должна быть ядром сайта, то есть базовые настройки.
Остаётся роутер, он выполняет обычное условие и проверяет, какую страницу в данном случае подключить через include.

Не понимаю недовольство, лично я учился по ирбису давным давно, там всё норм, садись и изучай и осваивай всё это. Твоя ошибка, видимо, ты хочешь за 2 дня понять программирование, а я работаю над своим движком уже 3 года, и еженедельно узнаю что-то новое и правлю и совершенствую. Программирование - это то, на что учиться надо ОЧЕНЬ долго.

Полноценный сайт - это то, что видит пользователь, и ему безразлично внутренняя составная сайт, которую ты можешь делать КАК УГОДНО, лишь бы работало!

Ты выше назвал минусом то, что является минусом для ПРОСТОГО сайта, для среднего - минус затирается, а для крупного - превращается в ПЛЮС. Так всегда было и будет...

И да, MVC - один из подходов, существует ещё МОДУЛЬНАЯ АРХИТЕКТУРА, где весь сайт состоит из модулей. а роутер подключает нужный для каждой страницы. Я сейчас как раз с таким сайтом столкнулся. Что я скажу, под каждую задачу надо подбирать то, что лучше всего подходит.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
dmitriy2294
Спасибо огромное за то что не поленился написать такое развернутое и подробное разъяснение а про ирбис я ничего плохого не говорил, сайт отличный!). Так, давай прикинем, я в принципе в синтаксис уже вник, базовые средства более менее знаю (функции, работа с переменными, условия, циклы, константы и т.д. ну ты понял:)), далее, в ирбисе я прочита про эту разрезку шаблона и последующего инклуда кусков в каком либо файле(который является разделом сайта, а крепим шапку менюху и футер)(это видимо самый простой из адекватных способов делать сайт), + ко всему понял как работать с сессией и понял что можно функции и старт сессии вынести в отдельный файл, и так же инклудить его! Это как бы файл конфигурации. Это то что я имаю на сегодняшний день, этого достаточно для попыток создать не сложный сайт? Или может быть стоит ещё привинтить то, что написанно в статье на которую я давал ссылку( и да, хотелось бы ссылочку на хорошую статью по этой теме, а то там она так и не раскрыта smile.gif)

П.С. и эта статья не имеет ли отношения к ЧПУ(просто ссылки там не стандартного вида,а такие "articles.php?id=", или ЧПУ относится только к виду ссылок но не к структуре сайта, как в той статье??

Ну человек я такой, везде мне надо до основания докапаться, всё систематизировать и классифицировать, иначе покоя не будет)
inpost
dmitriy2294
Есть такой отвратительный учитель, Поповом зовут, так вот даже его знаний хватит на то, чтобы создать сайт. Создать сайт не сложно, сложно понять, как создавать именно хороший и качественный сайт. Безопасность, удобность, правильный подбор алгоритмов для тех же стандартных задач. У нас на форуме люди путаются от того ,что не знают как правильно обработать пароль, как правильно сделать переадресацию, какие функции когда применять надо, чтобы сайт был в безопасности. А это всё основы, хотя и без них можно сделать сайт.

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

Для удобного ЧПУ необходима единая точка старта, это index.php . А правильный путь на статьи: index.php?page=articles&id=... - вот тут ЧПУ создаётся одной строчкой и удобно настраивается.

Что-то мега-крутое и удобное и понятное - я дал в ЛС smile.gif А в общем, нужна именно ПРАКТИКА, то есть делать что-то, и тогда будешь понимать все свои ошибки.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.