Jag har valt att i min trädstrukturerade produktmeny ha kategorier och innehåll i kategorier särskiljda.
prodcat:
id int(255) primary
subcat int(255)
namn text
Om subcat är tom så räknas den som en kategori på toppnivå.
Annars så är den en underkategori till idnumret i subcat. fungerar hur långt man vill utan en massa onödiga fält i databasen.
Funktionen nedan hämtar sökvägen till kategorin $id in i en array med idn.
Kod:
function get_tree($id,$cat) {
$row=mysql_fetch_assoc(mysql_query("SELECT * FROM prodcat WHERE id='$id'"));
$cat[] = $id;
$subcat=$row['subcat'];
if($subcat)
$cat = get_tree($subcat,$cat);
return $cat;
}