[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Зацените ГавНоКод :)))
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25
Shkiper
всем привет. по названию темы можно понять о чем идет реч( :rolleyes: :D ). Я хочу вылажить свой, некий паттерн на котором я пишу сайт(если его можно так назвать) и хочу чтоб вы его оценили(паттерн). мне он сам кажется не очень. Но мне важно ваше мнение так как у вас глаз "наметан" в этом деле. И так приступить гавнокодить.

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
Быстрый ответ:

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