Hjælp til at færdiggøre navigation script

Tags:    php pysql cms navigation

Hej alle,

Jeg har skrevet om dette for et par dage siden, men det lykkedes desværre ikke at løse problemet med de ellers super gode forslag der kom :-)

Jeg er i gang med at lave et mindre cms.

Da det er helt nyt med php og mysql for mit vedkommende har det taget uendeligt lang tid at komme hertil hvor jeg er nu = tæt på målstregen :-)

Jeg formåede fint at lave et cms, hvor der blot var en tabel involveret som navigation.

Nu er jeg ved at udvide dette, til at indeholde to tabeller (dvs. relationer i databasen), hvor den ene tabel fungerer som parent i en global horisontal menu, og den anden tabel fungerer som child i en vertikal menu.

Når en parent er klikket på, viser de relevante children sig, helt fint.

Men når jeg klikker på et child link, så forsvinder resten af child navigationen, hvilket ikke er intentionen, men logisk ifht min kode, som jeg simpelthen sidder fast med ifht at få tilpasset til ovenstående.

Min database ser ud som følger:

Dette er for den globale menu = parents i navigationen = subjects i mine queries
Fold kodeboks ind/udSQL kode 


Dette er for den lokale menu = children i navigationen = pages i mine queries!
Fold kodeboks ind/udSQL kode 


Som det er nu, så vises parent navigationen, det skal den også, hele tiden.

Når jeg klikker på en parent, så vises de rigtige children. Men de forsvinder efter at en af dem er klikket = kernen af mit navigations problem!

Det skyldes logisk nok nedenstående kode, hvor jeg forsøger at fastslå om enten en parent eller en child er aktiv:
Fold kodeboks ind/udPHP kode 


Måden hvor jeg har lavet min parent navigation, ser således ud:

Fold kodeboks ind/udPHP kode 



Måden hvor jeg har lavet min children navigation, ser således ud:

Fold kodeboks ind/udPHP kode 


Alt dette kører i toppen af min side.

Derefter har jeg min html, hvor jeg echo'er variablerne ud på denne måde:
Fold kodeboks ind/udHTML kode 


Det er klart at navigationen forsvinder efter en page er set, da en page kun kan vises hvis et subject er set, ifht min kode helt i toppen.

Jeg kan simpelthen ikke gennemskue hvordan det skal gøres og har brugt en uge på at finde logikken i det nu, samt rodet rundt på google i flere dage.

Så dette er et mindre nødråb :-/

Er sikker på at det er relativt lidt der skal ændres, but how?

Mvh, Jan



4 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Jeg holder stadig på, at du skal gøre som jeg skrev i den tidligere tråd, med:

Fold kodeboks ind/udPHP kode 


For at det skal virke, kræver det selvfølgelig at du både har sid og pid i adresserne.

Hvis du ikke vil det, må du lave du igennem en mere besværlig omgang, hvor du, du via. pid finder ud af hvad subjekt siden hører til, hvor efter du så forespørger de respektive sider til menuen.

Kigger du i dit andet sidste stykke kode, kan du se at din sql-query er afhængig af, at der er sat et subjectid, og det fjerner du altså med den måde du behandler variablerne på. Det ville du tilgengæld ikke gøre med det jeg lige skrev.




Ok nu har jeg flg:
Fold kodeboks ind/udPHP kode 


Dette får min side til fuldstændig at forsvinde..

Skal der ændres noget i $PageMenuDisplay? $SubjectMenuDisplay?

Med det "gamle", som var der før, viste alle menuerne sig ok, men pagse forsvandt som sagt efter at være klikket på:
Fold kodeboks ind/udPHP kode 


Det er mig et mysterium hvordan det kan laves efterhånden :-)




Indlæg senest redigeret d. 21.04.2011 10:15 af Bruger #16555
Som jeg skrev til dig, ville det der være afhængig af at du både har sid og pid i dine links. Det har du ikke. Du har faktisk kun sid, og så vil det aldrig virke når du laver det på den måde.... Så var det du skulle ind og lave en omvej for at få fat i menustrukturen..



Jeg ved godt jeg er en smule retarded ifht det her problem.. :-)

Kan det være sådan at jeg skal inkludere sid og pid i mine links?
Fold kodeboks ind/udPHP kode 


Det giver nemlig også bare en blank side, men jeg kan se i URL'en at der faktisk står en side, feks. sid=....



Indlæg senest redigeret d. 21.04.2011 15:45 af Bruger #16555
t