Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Своя CMS(деление на разделы)
 
 автор: infocean   (25.08.2008 в 13:38)   письмо автору
 
 

Здравствуйте!
Я пишу свою CMS:
1) Посмотреть на работу CMS можно здесь: http://t9p-l9p.ru
2) Все данные берутся из базы
3) Шаблонный парсер Smarty
4) Это бета-версия
5) На сайте должно быть пять разделов, как минимум (ТВ,WEB-камеры, Радио и т.д.)
6) И главная страница, на которой будет выводиться информация о сайте
7) Также полное использование ЧПУ

Возникшие проблемы (Вопросы):
1)Как правильно организовать разделение на разделы?

2)Как сделать, чтобы можно было создавать разные разделы в админке, т.е. чтобы не прописывать их в index.php, а прописать их только в шаблон(в меню) и всё?
Также переход на каждый раздел должен осуществляться по такое схеме(ЧПУ):
_http://tv.t9p-l9p.ru/television/index.html
_http://tv.t9p-l9p.ru/radio/index.html

3)Как сделать постраничную навигацию в каждом разделе, учитывая Smarty?

4)Как сделать, чтобы при обращении на несуществующую страницу выдавалась ошибка моим движком, а не апачом???
Пример:
_http://tv.t9p-l9p.ru/gggggggg.html (Сейчас пишет: Not Found
The requested document was not found on this server.)
А надо чтобы загружалась страница сайта,где будит написано: Страница не найдена(или что-то подобное)

Если, нужны какие-то данные, спрашивайте, обязательно отвечу!

Заранее благодарен за помощь.

  Ответить  
 
 автор: sl1p   (25.08.2008 в 14:32)   письмо автору
 
   для: infocean   (25.08.2008 в 13:38)
 

4)
.htaccess

ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html

  Ответить  
 
 автор: Infocean   (25.08.2008 в 18:02)   письмо автору
 
   для: sl1p   (25.08.2008 в 14:32)
 

Всё бы хорошо, но мне надо сделать это с помощью ПХП.
Чтобы при запросе не существующей страницы, ПХП-функция делала запрос в БД и возвращала ответ в виде какой либо ошибки и помещала его в шаблон Smarty.
Примерно таким способом сделано в популярном движке DLE.

Люди помогите, решить эти задачки, пожалуйста!

  Ответить  
 
 автор: Эд   (26.08.2008 в 10:46)
 
   для: Infocean   (25.08.2008 в 18:02)
 

.htaccess

ErrorDocument 401 /401.php
ErrorDocument 403 /403.php
ErrorDocument 404 /404.php
ErrorDocument 500 /500.php

  Ответить  
 
 автор: Infocean   (26.08.2008 в 15:43)   письмо автору
 
   для: Эд   (26.08.2008 в 10:46)
 

Ладно,сделаем как вы сказали.
Теперь остаются первые 3 пункта,подскажите кто знает!!!

  Ответить  
 
 автор: GeorgeIV   (26.08.2008 в 22:27)   письмо автору
 
   для: Infocean   (25.08.2008 в 18:02)
 

Неправильно тебе сказали. При таком построении более правильно искать раздел в базе, если его там нет, формировать страницу с заголовком 404 ошибки ,со своим текстом и можно своим шаблоном.

Вообще правильно делать с помощью .htaccess mod_rewrite всего на index.php, а строку отдавать в качестве параметра. Индексный файл на основе парсинга полученного урла выбирает из БД данные на раздел и имя шаблона этого раздела, формирует страницу и выдает клиенту.

по первому вопросу:
делаешь шаблон для каждого раздела, название или идентификатор каждого шаблона хранишь в базе. Разделы обычно логикой работы определяются.

2. переходы лучше делать вида radio.html, tele.html и т.п. С помощью mod_rewrite пересылаешь на index.php, имя до html будет парметром для базы для формирования целой страницы. В админке просто добавляешь в БД новый вид урла - например,video.html и соответствующие ему шаблон и какие то другие параметры (например, кэшировать или нет, ключевые слова на странице, заголовок страницы и т.п.), что будет потом браться из базы и формировать вид документа.

Постраничная навигация будет очень проста, так страница тоже будет парметром в урле, напрмер video.html?p=10 преобразуется в index.php?razdel=video&p=10 далее дело техники
Любой урл, не имеющий в базе соответствия автоматически формирует страницу с ошибкой.

  Ответить  
 
 автор: Infocean   (27.08.2008 в 11:34)   письмо автору
 
   для: GeorgeIV   (26.08.2008 в 22:27)
 

Класс, вот спасибо добрый человек :)!
Я кстати насчёт ошибок примерно также думал, а насчёт деления на разделы, огромное вам спасибо за подсказку.
Сейчас пойду делать дальше движок, надо ещё модуль редиректа добавить (вчера написал), чтобы внешние ссылки замаскировать. :)

А насчёт постраничной навигации, у меня маленько другие проблемы….
Я только не давно начал работать со Smarty, поэтому никак не пойму как прописать ее (навигацию) в ПХП-Файл или в Шаблон, какой должен быть код?

Если есть примеры или полезные ссылочки, то кидайте, буду рад почитать!!!

Если у кого есть ещё мысли, то пишите, обязательно прочитаю и скажу спасибо :) !!!

  Ответить  
 
 автор: GeorgeIV   (27.08.2008 в 17:37)   письмо автору
 
   для: Infocean   (27.08.2008 в 11:34)
 

Шаблон обычно один на раздел, внутри шаблона могут использоваться еще шаблоны для единообразного формирования отдельных частей сайта. Смысл использования шаблонов в том, что в них сосредоточено все оформление, а вся логика в скрипте.

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

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования