我現在用的是鄰接表模型找到我的網站中的子類別。我有PHP代碼來查找所有類別和子類別,但現在我無法弄清楚如何使用它來創建導航系統。下面是該網站將如何工作的,很基本的:?鄰接表型號+網址導航
URL字符串 將會有一個主類,其次是各級
的index.php類別=類別名& 1級=子類別&級別2 =其他子類別& 3級=內容項
後來,我將讓搜索引擎友好的鏈接。
URL沒有子類別 其中1級爲內容項
www.website.com/category/content-item/
URL與子類 其中等級1,2,3等是子類別和最後一級是內容項
www.website.com/category/sub-category/sub-category-2/content-item/
這裏是我使用的查找類別和子類別代碼。目前它只是輸出所有類別和子類別的列表,數字是每個孩子的級別。不知道這是否有幫助,它只是創建一個列表。
function display_children($ParentCategoryID, $Level) {
// retrieve all children of parent
if ($ParentCategoryID == ''){
$Result = mysql_query('SELECT * FROM categories WHERE parent_category_id IS null');
}
else{
$Result = mysql_query('SELECT * FROM categories WHERE parent_category_id="'.$ParentCategoryID.'";');
}
// display each child
while ($Row = mysql_fetch_array($Result)) {
echo str_repeat('-',$Level)."[".$Level."]".$Row['category_name']."<br />";
display_children($Row['category_id'], $Level + 1);
}
}
這都是偉大的,但究竟是什麼問題? – bububaba
@bububaba問題是,我如何鏈接到我的內容?在我的數據庫中說我有一個名爲'content'的表。在該表中是類別爲「3」的行。如果'3'是'2'和一個孩子'2'是'1'和孩子'1'是父,我怎麼會造成系統無法正常顯示的內容,相對於類別和子類別?因此,從主頁點擊'1'查看'2',然後點擊'2'查看'3',然後點擊'3'查看'content'。最終結果將是1 => 2 => 3 =>內容頁面。我不知道這是否有道理,希望它確實如此。謝謝。 –
另外,'content'表只知道它最低的子類別的類別id。我有另一個名爲'categories'的表來告訴每個類別是否有父類。 –