FAQ |
Kalender |
![]() |
#11 | ||
|
|||
Klarade millennium-buggen
|
Det beror ockås lite på hur pass exklusiva underkategorierna är, dvs om de kommer att figurera i mer än en huvudkategori. Eller om du kommer nån gång i framtiden att ha under-underkategorier.
Och vad är problemet? Att hitta grejerna eller att skriva ut trädet utifrån den grenklyka man befinner sig just nu? Ett tips är att tänka igenom databasens och tabellernas konstruktion noga så att det blir lätt att skala den i olika dimensioner och det går lätt att hitta det du behöver. Att lappa och laga med kod och frågor i efterhand är bara bökigt. |
||
![]() |
![]() |
![]() |
#12 | ||
|
|||
Klarade millennium-buggen
|
Citat:
![]() Tänker inte riktigt rätt... Edit: 888 inlägg =))) |
||
![]() |
![]() |
![]() |
#13 | ||
|
|||
Klarade millennium-buggen
|
Jag löste detta med array. Dock måste man kopiera koden om man vill ha en djupare struktur än 3-e nivån.
Kod:
// 0 - id, 1 - sub, 2 - title // Max: 3 - level for ($k=0; $k<count($catrows); $k++) { if ($catrows[$k][1] == '0') { $link = $catrows[$k][0]; echo "<br /><a href='page.php?id=$link'>"; echo $catrows[$k][2]; echo "</a>"; echo "<br />"; $idd = $catrows[$k][0]; for ($l=1; $l<count($catrows); $l++) { if ($catrows[$l][1] == $idd) { $link = $catrows[$l][0]; echo "- <a href='page.php?id=$link'>"; echo $catrows[$l][2]; echo "</a>"; echo "<br />"; $iddd = $catrows[$l][0]; for ($m=0; $m<count($catrows); $m++) { if ($catrows[$m][1] == $iddd) { $link = $catrows[$m][0]; echo "- <a href='page.php?id=$link'>"; echo $catrows[$m][2]; echo "</a>"; echo "<br />"; } } } } } } |
||
![]() |
![]() |
![]() |
#14 | ||
|
|||
Har WN som tidsfördriv
|
Går att lösa med rekursiva funktioner tror jag det heter... att den traverserar ner alla nivåer.
|
||
![]() |
![]() |
![]() |
#15 | ||
|
|||
Har WN som tidsfördriv
|
Detta är faktiskt en riktigt klurig sak rent progammeringsmässigt och det finns lite artiklar på webben om hur man bygger trädmenyer.
Jag har t.ex. löst en kategorivandring där man klickar på en kategori och får upp underkategorier och så vidare genom att ha ett fält i tabellen där jag helt enkelt skriver in hela sökvägen till just ett ämnes kategori. Sökvägen i fältet ser ut enligt följande: fordon/bilar fordon/lastbilar fordon/lastbilar/över 3,5 ton fordon/lastbilar/under 3,5 ton fordon/båtar fordon/båtar/segelbåtar fordon/båtar/segelbåtar/katamaraner fordon/båtar/segelbåtar/skonare fordon/båtar/motorbåtar osv. Ovan är bara ett exempel. Sedan gäller de ju bara att skriva kod som kan tolka ovanstående och plocka fram de ämnen som är har en viss kategori. |
||
![]() |
![]() |
![]() |
#16 | ||
|
|||
Medlem
|
Jag skrev som sagt ihop ett träd snabbt för ett tag sedan. Jag har inte lagt ner så mycket tid på koden, men ni får gärna förbättra den om det går.
Demo: http://www.niklasfors.com/treemenu.php Källkod: http://www.niklasfors.com/treemenu.phps |
||
![]() |
![]() |
![]() |
#17 | ||
|
|||
Bara ett inlägg till!
|
Du får nog ta och kolla över din kod lite:
Warning: Invalid argument supplied for foreach() in /var/www/niklasfors.com/treemenu.php on line 58 Inget allvaligt direkt men är ganska fult : ) |
||
![]() |
![]() |
![]() |
#18 | ||
|
|||
Medlem
|
Citat:
|
||
![]() |
![]() |
Svara |
|
|