Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Структура движка, принципы построения страниц, и т.д. 
:(
    Опции темы
BobiKK
Дата 26.5.2006, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 655
Регистрация: 1.12.2005
Где: Essen, Deutschlan d

Репутация: 4
Всего: 16



Ребят, нужна консультация.
Опыта в создании сайтов практически нет. Так, отдельные странички. Но есть задачка: создать сайт.
Из себя он должен представлять что-то следующее:
1) header и footer для всех страниц одинаковые
2) Под шапкой горизонатльное меню, формирующееся из соответсвующей таблицы MySQL 
3) Слева вретикальное меню, формируемое в зависимости от того, что выбрано в горизонтальном меню.
4) Посередине само содержание страницы. Тоже формируется из БД
5) Сайт многоязычный. Точнее, есть версии сайта на трех языках
6) Есть так же закрытая часть сайта, т.е. для зарегистрированных и авторизированных пользователей. Там будет небольшая галлерея и архив файлов для скачивания.
7) Хотелось бы это всё оформить в стиле ООП
8) Дизайн, в принципе, построен на шаблонах

Вопрос в следующем: как это всё сделать? smile
Что должен представлять из себя файл index.php? Маленький файлик, в котором инклюдятся файлы классов, и где будет только создание объектов и вызовы соответсвующих методов?
Как построить иерархию классов?
Пока на ум приходит только что-то типа этого:
файл: mainclass.php
              |
            class SQL
              |
            class Cookie extends SQL - (класс для определения дефолтного языка, установки дефолтного языка, установки переменных, необходимых для определения языка другими методами и т.д. )
              |
            class Show extends Cookie
            function show_header();
            function show_footer();
        
Файл: bodyclass.php
                |
             class ShowBody extends Cookie
             function show_horizontal_menu(string selected_item);
             function show_vertical_menu (string selected_item);
             function show_body(string body_item_from_mysql);

Файл: privateclass.php
               |
           class ShowPrivate extends Cookie
           function show_private_horizontal_menu(string selected_item);
           function show_private_vertical_menu (string selected_item);
           function show_private_body(string body_item_from_mysql);

Плюс файлы шаблонов: header.tpl, footer.tpl, horizontal_menu.tpl, vertical_menu.tpl, body.tpl, private_horizontal_menu.tpl и т.д.
Каждый метод show работает со своим шаблоном, парсит его и показывает. 
PM MAIL   Вверх
TwiSteR
Дата 26.5.2006, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кибер красавчег
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 15.6.2005
Где: World->Russia

Репутация: нет
Всего: 2



Ну я бы предложил юзать switch

что-то типа
Код

//Including scripts
if(isset($_GET['act'])){
        switch($_GET['act']) {
                case "exchg":include_once(SITE_ROOT."currency.php");break;
                case "weather":include_once(SITE_ROOT."weather.php");break;
                case "faq":include_once(SITE_ROOT."faq.php");break;
                case "feedback":include_once(SITE_ROOT."feedback.php");break;
                case "prices":include_once(SITE_ROOT."price.php");break;
                default:include_once(SITE_ROOT."main.php");break;
        }
}elseif(!isset($_GET['act'])) {
        include_once(SITE_ROOT."main.tpl");
}else{
        echo "Sorry we have some problems. Please come back later !!!";
}



Вызов ессесно mysite.com/index.php?act=someact 

Это сообщение отредактировал(а) TwiSteR - 26.5.2006, 21:36
--------------------
PM MAIL WWW ICQ   Вверх
Mal Hack
Дата 26.5.2006, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(TwiSteR @  26.5.2006,  21:33 Найти цитируемый пост)
        switch($_GET['act']) {

strtolower не забываем.

BobiKKhttp://forum.vingrad.ru/index.php?showtopic=77651 - погляди темы из этого  топика. 
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0629 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.