Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Универсальный алгоритм меню ...
Форумы портала PHP.SU » Объявления » FreeLance » Универсальный алгоритм меню ...

Страниц (1): [1]
 

1. toturvator - 28 Июля, 2007 - 20:39:03 - перейти к сообщению
Уважаемые.

Движимый очередной переделкой сайта (перевод на структуру div без таблиц) Радость Шкурка уже работает! ;) Встал вопрос переделки движка сайта - пламенного мотора. Хотелось бы сделать вот что:

Тыркая по меню, по команде (условно): act?work=01 или act?plat=03 или act?bonus или act?main и т.п. загружался соответствующий контент. При этом должен использоваться один шаблон сайта по структуре: Меню - Контент - Реклама (как у меня на сайте). Информация должна загрузиться в Контент. Иначе говоря динамически меняется только Контент, генерируемый в зависимости от "act". Как сделать это пока ума не приложу. Недовольство, огорчение

Вот так и живем. Улыбка Всем откликнувшимся заранее спасибо.

P.S. Новая шкурка здесь http://navigator[dot]iplot[dot]ru/new/index.php Буду признателен за выявленные баги в виде скринов экрана.
2. evgenijj - 29 Июля, 2007 - 15:20:23 - перейти к сообщению
toturvator пишет:
Иначе говоря динамически меняется только Контент, генерируемый в зависимости от "act". Как сделать это пока ума не приложу. Недовольство, огорчение

Фреймы. Или перезагружать всю страницу.
3. toturvator - 29 Июля, 2007 - 17:03:58 - перейти к сообщению
Перегружаю всю страницу. Улыбка

Не соображу только как организовать это в рамках php по умному.
4. evgenijj - 30 Июля, 2007 - 00:01:23 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. // подключаем верхнюю часть страницы
  4. require "header.html";
  5.  
  6. if ( !isset( $_GET["action"] ) ) $_GET["action"] = "main";
  7.  
  8. $menu = getMenu( $_GET["action"] );
  9. $content = getContent( $_GET["action"] );
  10. $advertising = getAdvertising( $_GET["action"] );
  11.  
  12. $template = file_get_contents( "template.html" );
  13. $html = str_replace("{menu}", $menu, $template);
  14. $html = str_replace("{content}", $content, $html);
  15. $html = str_replace("{advertising}", $advertising, $html);
  16.  
  17. echo $html;
  18.  
  19. // функция возвращает меню страницы
  20. function getMenu( $action )
  21. {
  22.   // это просто для примера - здесь может быть гораздо более сложный код,
  23.   // который формируем меню в зависимости от параметра $action
  24.   $html =  file_get_contents( "menu.html" );
  25.   return $html;
  26. }
  27.  
  28. // функция возвращает рекламу для страницы
  29. function getAdvertising( $action )
  30. {
  31.   ................................
  32.   return $html;
  33. }
  34.  
  35. // функция возвращает основное содержание страницы
  36. function getContent( $action )
  37. {
  38.   // параметр action может принимать значения
  39.   // "main", "catalog", "contact", "news" и т.п.
  40.   $action = mysql_escape_string( $action );
  41.   $query = "SELECT content FROM pages WHERE page='".$action."'";
  42.   $res = mysql_query( $query );
  43.   if ( mysql_num_rows( $res ) > 0 )
  44.   {
  45.     $html = mysql_result( $res, 0 );
  46.   }
  47.   else
  48.   {
  49.     $html = "Запрошенная страницы не найдена на сервере";
  50.   }
  51.   return $html;
  52. }
  53.  
  54. // подключаем нижнюю часть страницы
  55. require "bottom.html";
  56. ?>
  57.  

template.html
PHP:
скопировать код в буфер обмена
  1.  
  2. <table>
  3. <tr>
  4.   <td>{menu}</td>
  5.   <td>{content}</td>
  6.   <td>{advertising}</td>
  7. </tr>
  8. </table>
  9.  

 

Powered by ExBB FM 1.0 RC1