[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Организация структуры сайта
Xes
Почитываю это http://irbis-team.com/15/3/8
Я сляпал сайт в нем вобщем то, понятная мне структура, но вот чтобы зделать шаблоны для сайта это врятли получится так как код html и php так сказать интегрированны.
Я пытался перенести свой сайт на dle движок, зделал какуюе то часть, но стилистика так и осталась новостного движка. Не получаеться описать некторые нюансы мол если так то надо так если так то так и так далее плюнул и решил что легче самому довести до ума свой рукописный код.

Так вот возникает вопрос как быть с моей глубой интеграцией Php и html ниже примеры кода ну и вопросы ниже.

Сайт вобщемто вот http://listhotel.ru чтобы было понятно визуально. Прзьба не ломать, когда будет можно скажу пока и без этого делов куча )))

На главной странице колонка первая формируется кодом ниже. Как видите html миняется динамически в зависимости от данных из БД (в зависмости от записи из БД) если первая буква города изменилась то оформляем букву и выводим город иначе просто город.
Помоему это не возможно засунуть в шаблон.

<p>Пожалуйста, выберите интересующий Вас город:</p>
<
table align="center" border="0" cellspacing="0" cellpadding="0">
<
tr>
<
td width="170" valign="top">
<
div style="margin:0 0 0 20;">
<?
$query = "SELECT `goroden`, `gorodru`, `gorodrod`, LEFT(`gorodru`,1) as bukva FROM `goroda` WHERE LEFT(`gorodru`,1)>='А' and
LEFT(`gorodru`,1)<='"
.$bukva1."'
and `gorodru` <> '' ORDER BY `gorodru`"
;
$sql = mysql_query($query);
$bukvatemp='';
while($sqlrow = mysql_fetch_array($sql))
{
if($bukvatemp!=$sqlrow['bukva'])
{
$bukvatemp=$sqlrow['bukva'];
echo '<div style="margin:10 0 5 0;padding-left:8px;
font-family:Verdana;font-size:12pt;font-weight:bold;font-style:normal;">'
.$bukvatemp.'</div>';

}
echo '<a class="ind" href="gorod.php?goroden='.$sqlrow['goroden'].'" title=
"Гостиницы '
.$sqlrow['gorodrod'].'">'.$sqlrow['gorodru'].'</a><br>';
}
?>
</div>
</
td>
<
td width="170" valign="top">
<
div style="margin:0 0 0 20;">
<?
$query = "SELECT `goroden`, `gorodru`, `gorodrod`, LEFT(`gorodru`,1) as bukva
FROM `goroda` WHERE LEFT(`gorodru`,1)>'"
.$bukva1."'
and LEFT(`gorodru`,1)<='"
.$bukva2."' and `gorodru` <> '' ORDER BY `gorodru`";
$sql = mysql_query($query);
$bukvatemp='';
while($sqlrow = mysql_fetch_array($sql))
{
if($bukvatemp!=$sqlrow['bukva'])
{
$bukvatemp=$sqlrow['bukva'];
echo '<div style="margin:10 0 5 0;padding-left:8px;
font-family:Verdana;font-size:12pt;font-weight:bold;font-style:normal;">'
.$bukvatemp.'</div>';
}
echo '<a class="ind" href="gorod.php?goroden='.$sqlrow['goroden'].'" title=
"Гостиницы '
.$sqlrow['gorodrod'].'">'.$sqlrow['gorodru'].'</a><br>';
}
?>
</div>
</
td>


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

Еще пример если открыть описание одной из гостиниц файл hotel.php (вы можите потыкать и дойти до него) то контент там тоже разный в зависмости от того Гостиница это Отель ... или Квартира на сутки.
Код приводить не буду он аналогичен: "Если переменная тип объета имет значение гостиница то выводить один контент... если отель то контент преднозначенный для отеля и так далее" (Для этого случая меняються общие фразы типа "О Гостинице" "Об отеле")

Как это разбить по шаблонам я не представляю.
Уточню что Гостиница и отель по структуре основной таблицы разметке одинаковы а вот квартиры на сутки другая разметка там половина данных отсутсвует.

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



Спустя 43 минуты, 10 секунд (31.05.2011 - 17:35) Xes написал(а):
И стоит ли этим вообще заморачиваться для ресурсов такого уровня как мой. В статье кнечно все супер вырисовывется все прочто чудо, а не структура...

Спустя 3 минуты, 11 секунд (31.05.2011 - 17:38) neadekvat написал(а):
Начнем с того, что уже готовый сайт переводить на рельсы MVC - это жесть. То есть я бы за это не взялся ни за что. В принципе, это то же самое, что сначала построить дом, а потом сваи в нем заменять. Не получится.

Спустя 10 минут, 40 секунд (31.05.2011 - 17:49) maurise написал(а):
Получится. Сейчас как раз разделяю мух от котлет на своём ранее сделанном сайте. Но вот то, что это жесть, полностью согласен. По сути пишу новый сайт. wacko.gif

Спустя 10 минут, 13 секунд (31.05.2011 - 17:59) neadekvat написал(а):
Цитата (maurise @ 31.05.2011 - 18:49)
Получится.

Цитата (maurise @ 31.05.2011 - 18:49)
По сути пишу новый сайт.

Вялое опровержение получилось.

Спустя 1 час, 17 секунд (31.05.2011 - 19:00) Xes написал(а):
Хочу догнать в каком направлении двигаться. Струкура моих страниц напоминает модули.
Так например большая часть всех запросов присходит в модуле head.php далее все модули восновном размет и вывод результата работы модуля (файла) head.php.

Чтобы мне привратить все в MVC как я понимаю нужна те мелкие вычисления которые пресутсвуют например в файле rightmenu.php который внутри centerfinish.php вынести в php файлы которые теперь будут модулями.
Файл head.php - превратить в модуль который вычесляет определенные данные в зависимости от открытой страницы, собственно что уже и реализованно (просто как у хиппи он не называется у меня модулем и лежит в месте со всеми подключаемыми файлами.)

Далее шаблоны типа файлов log.php, centerstart.php, bottom.php - это все статика мне их надо раскрывать или же так и оставить как шаблон и инклюдить опять таки в шаблон уже целековой страницы?

Вот хотябы в этом подскажите там может что и проясниться.

<? require('config.php'); ?>
<html>
<head>
<?
require(root().'design/head.php'); ?>
</head>
<body
leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table
class="tablebig" border="0" cellspacing="0" cellpadding="0" align="center" >
<?
require(root().'design/log.php'); ?>
<?
require(root().'design/centerstart.php'); ?>
<!-- MAIN -->
<td class="main" style="background:url(<? echo $urlsite ?>/images/imgluslovie.gif) no-repeat left 35px;">
<?

if(empty($errordb))
{
echo '<h1>'.$fraza1.'</h1><p class="indent">Здрав.........одов.</p>';
}
else
{
echo $errordb;
}
?>
</td>

<!-- /MAIN -->
<? require(root().'design/centerfinish.php'); ?>
<?
require(root().'design/bottom.php'); ?>
</table>
</body>
</html>


<!-- CENTER FINISH -->
<? require(root().'design/rightcolomn.php'); ?>
</tr>
</table>
</td>
</tr>

<!-- /CENTER FINISH -->
Быстрый ответ:

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