2012-12-20 36 views
0

我有大量的用戶可以在我的網站上採用的路線,例如,如果他們是一個特定的用戶,他們獲得與另一個用戶不同的導航。我如何在我的網站上形成動態導航

什麼行業用戶是的,我已經創建了一個switch語句來捕獲這些ID和建構自己獨特的導航頭銜相關:

switch($sector_id){ 
    /*chefs 
    case 'f8721714d845eaa5222dcdb4dd642ceb29a280bc': 
     $key_array= array('menus','news','staff','directory'); 
     $url_array = array('/dashboard/menus/','/dashboard/news2/','/dashboard/staff2/','/dashboard/directory2/'); 
     $name_array = array('Menus2','News2','Staff2','Directory2');'Recipe Stories', 'Blog', 'Events'); 
     break;*/ 
    //restaurants, pubs 
    case 'c835ff2d2838b3ea45bdb729c641b73b4fa0098d': 
    case '378ee5253530d7d02cea3012966deab24bcc5da2': 
     $key_array= array('menus','news','staff','directory'); 
     $url_array = array('/dashboard/menus/','/dashboard/news/','/dashboard/staff/','/dashboard/directory/'); 
     $name_array = array('Menus','News','Staff','Directory'); 
     break; 

因此,例如,這是我已經有(硬編碼):

array( 'key' => 'profile', 
     'url' => '/dashboard/profile/', 
     'name' => 'Profile'), 
array( 'key' => 'picture', 
     'url' => '/dashboard/picture/', 
     'name' => 'Profile Picture'), 
array( 'key' => 'cv', 
     'url' => '/dashboard/cv/', 
     'name' => 'CV'). 

我該如何動態構建上面的數組?我可以使用每個語句,但他們必須嵌套的權利?任何幫助,將不勝感激。

感謝

回答

1

你有沒有想過爲每個用戶類型創建靜態導航的HTML和公正,包括用戶類型文件基礎?如果你不想在動態導航上選擇「All Out」,這對你來說可能會更容易。你硬編碼您的導航反正...

如果你想成爲真正的動態,你所有的導航項目的存儲在表(ID,鍵,網址,姓名),並創建一個連接表用戶類型和導航項目。

加入表列: (用戶類型,navigation_id)

連接表的SQL(未測試)

SELECT * FROM usertype_navigation un JOIN navigation_items ni on un.navigation_id = ni.id WHERE un.usertype = "c835ff2d2838b3ea45bdb729c641b73b4fa0098d" 

這將通過每個記錄返回所有的導航項目,循環和吐出的HTML導航項目。