index.php
<?php
error_reporting(E_ALL & ~E_NOTICE);
session_start();
require './system/data/db.php'; //соеденяемся с БД и с таблицей естественно
require './system/data/config.php'; // файл с конфой(название сатйа, описание и прочая лабуда)
require './system/library/scripts.php'; //Файл с массивом подключаемых скриптом к определенной странице
require './system/classes/bbcodes.class.php'; //файл с классом который преобразует bbcode в html тэги. его я взял с irbis-team так что его проверять не будем. В мастерстве twin`a не кто не совмневается )))
require './system/classes/snippets.class.php'; //В нем содеражтся всякий хлам. тоде в нем класс и в нем методы. Например чтоб подщитать сколько у пользователя новостей или коментов. и все прочее
require './system/classes/template.class.php'; //В данном модуле содержится тоде класс и в нем методы которые вставляем в шаблоны. например вывод популярных новостей, аккаунт пользователя и т.д.
require './system/classes/engine.class.php'; // в нем основные методы. Методы показа гл. страницы, новостей, категорий и других модулей
$do = $_GET['do']; //название модуля содердится в этой переменной
if(isset($do))
{
switch($do)
{
case "news":
$page = $engine->news($_GET['name'], $_POST);
break;
case "category":
$page = $engine->category($_GET['name_cat'], $page);
break;
default:
$page = $engine->GetModul($do, $_POST, $_FILES, $_GET);
break;
}
// в $engine содержится создание обьекта класса который находится в /system/classes/engine.class.php )))
}
else
{
$page = $engine->index($_GET['page'], $_POST);
}
echo $page;
$index_tpl = 'template/main.tpl';
if(file_exists($index_tpl) == true)
{
$index_tpl = file_get_contents($index_tpl);
//заменяем все в шаблоне
echo strtr($index_tpl, array('{content}'=>$content, '{poll}'=>$class_poll, '{popnews}'=>$class_popularnews, '{search}'=>$class_search, '{login}'=>$class_login, '{arhives}'=>$class_arhiv, '{title}'=>$title, '{engine_scripts}'=>$engine_scripts, '{alert}'=>$alert));
/*Наверно у всех возникнет вопрос - А откуда здесь взялись глобальные переменные если м работаем с методами???
Вот это самая злостная часть кода над которой я очень сомневаюсь что при ее оглашении вас вырвет на "раз два".
А теперь приступим к самому страшному. обьясню откуда они взялись.
В методе я прописываю код который выполняется а потом пишу так - $GLOBALS['title'] = и тут заголовок и так с другими.
мне кажется такой метод не очень(мягко говоря) оквивалентен адекватному.
Но тут назначаются не все переменные. Только $title, $content, $engine_scripts, $alert а остальные в template.class.php но не таким способом
*/
}
else
{
echo "<p>Невозможно загрузить шаблон сайта: <b>template/main.tpl</b></p>";
}
mysql_close($db);
?>
Для исключения последующих сердечных приступов, после просмотра кода, я выложил только главный файл. Скажите что там не так(самое главное). Я надеюсь на вашу помощь !!! :D :D