2014-04-01 127 views
-3

我N級在MySQL類..N-級別層次結構在PHP

id name parent 
1 movie 0 
2 bollywood 1 
3 Hollywood 2 
4 Serial 0 
5 Star plus 4 
6 Sony  4 

現在我想在電影表顯示這樣

Tv Serial Name   Category 

Mahabharat   StarPlus-> Serial 

如何證明? ?

+0

你有什麼試過的? – Brovoker

+0

我還沒有嘗試過.. – Harddy

+2

您可能想了解[管理MySQL中的分層數據](http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/) – Touki

回答

1

我假設電視劇Mahabharat有CATEGORY_ID 4

一旦你有,你可以通過類別迭代,直到你找到父0

例如類別。 :

public function getCategories($record) 
{ 
    $category = ""; 
    $buildCategory = true; 
    $id = $record['category_id']; 

    while ($buildCategory) 
    { 
     $category = $this->getCategoryById($id); //Don't use query here, that's not efficient. 
     if ($category['parent'] != 0) { 
      $category .= $category['name'] . '->'; 
     } else { 
      $category .= $category['name']; 
      $buildCategory = false; 
     } 
    } 

    return $category; 
} 
+0

我認爲你的代碼是但如果我想創建它的功能,並在所有頁面中使用該功能,那我該如何管理? – Harddy

+0

我更新了答案。 – Brovoker

+0

和我應該在哪裏通過查詢... 例如: - 選擇*從類別,其中id = $ id ?? – Harddy