За последние 24 часа нас посетили 17663 программиста и 1656 роботов. Сейчас ищут 955 программистов ...

навигация с помощью db

Тема в разделе "PHP для новичков", создана пользователем alekslkta, 9 янв 2011.

  1. alekslkta

    alekslkta Активный пользователь

    С нами с:
    12 авг 2008
    Сообщения:
    32
    Симпатии:
    0
    Добрый день, уважаемые! У меня есть такой код для генерации древовидного меню из базы

    PHP:
    1. while ($menuItem = mysql_fetch_assoc($result))
    2. {
    3.     // Creates entry into items array with current menu item id ie. $menuData['items'][1]
    4.     $menuData['items'][$menuItem['c_id']] = $menuItem;
    5.     // Creates entry into parents array. Parents array contains a list of all items with children
    6.     $menuData['parents'][$menuItem['root']][] = $menuItem['c_id'];
    7. }
    8.  
    9.  
    10. echo "<div class='sidebarmenu'>";
    11. // Menu builder function, parentId 0 is the root
    12. function buildMenu($parent, $menuData)
    13. {
    14.     $html .= "<ul id='sidebarmenu1'>";
    15.     if (isset($menuData['parents'][$parent]))
    16.     {
    17.                    
    18.         foreach ($menuData['parents'][$parent] as $itemId)
    19.         {
    20.                         if(!isset($menuData['parents'][$itemId]))
    21.                                 {
    22.                                 $html .= "<li><a href='".$menuData['items'][$itemId]['link']."'>".$menuData['items'][$itemId]['title']."</a></li>";
    23.                                 }
    24.                                 #$html .="<ul>\n";
    25.                        if(isset($menuData['parents'][$itemId]))        
    26.                                 {
    27.                                 #$html .="<ul>\n";
    28.                                $html .= "<li><a href='".$menuData['items'][$itemId]['link']."'>".$menuData['items'][$itemId]['title']."</a>";
    29.                                 $html .= buildMenu($itemId, $menuData);
    30.                                 $html .= "</li>";
    31.                                 #$html .= "</ul>\n";
    32.                                     echo $itemId;            
    33.                                 }
    34.                         #$html .= "</ul>\n";            
    35.        }
    36.        
    37.     }
    38.         $html .= "</ul>";
    39.    
    40.     return $html;
    41. }
    меню будет находится влевой части сайта. Код меню в файле menu.php, вызывается в index.php. И мне нужно передать каим-то образом переменную из этого кода , или может другим образом сделать так, чтобы по нажатию меню кнопок страница не перегружалась, а нужный вызов отображался в середине экрана. Вобщем типа

    switch ($op)
    {
    case 'main' : include "project.php"; break;
    case 'delp' : include "task.php"; break;
    #case 'editform' : include "editcommentform.php"; break;
    #case 'edit' : include "editcomment.php"; break;
    #case 'hide' : include "hide.php"; break;
    #case 'show' : include "show.php"; break;
    default : include "project.php";
    }

    После длинного рассказа. Как передать из кода генерации меню правильную переменную, в которой будет нужная страница. Страницы у меня прописаны в ['link']. Огромное спасибо.
     
  2. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    ссылки, фреймы, ajax