Avatar billede bodyguard Nybegynder
08. februar 2011 - 18:35 Der er 2 kommentarer og
1 løsning

Treemenu - som er noget gammelt rod!

Hej Eksperter,

Jeg sidder og roder med noget hjemmeside jeg lavede for længe siden. Det er en bunke rod uden lige og jeg er simpelthen gået helt kold i at få skrevet det bedre.

Jeg vil gerne tilføje flere sub-niveauer, men jeg er gået helt kold... Den nuværende kode giver ét sub-niveau, men jeg har ikke kunne tøjle det så i stedet for menuen er der blot en "Gå tilbage" knap...

Jeg har ideelt brug for 2/3 sub-niveauer.


KODEN:
'#############################################################
'  Venstre Side Menu                                     
'#############################################################
    response.write "<td class=""VsideMenu"" valign=""top"" align=""left"" rowspan=""2"">"
   
If Request.Querystring("goback") = "yes" then
    response.write "<span class=""menuChosen""><a href=""java script:history.go(-1);"" class=""menuLvl3Open"">G&aring; tilbage</a></span>"
End if
   
If Request.Querystring("grpid") = "" then
    intGrpID = "1"
Else
    intGrpID = Request.Querystring("grpid")
End if
   
    set objRec8 = server.createobject("ADODB.recordset")
    strSQL = "SELECT * FROM hjemmeside_dokumenter WHERE menu_side = '"& intGrpID &"' ORDER BY sortering_side ASC"
    objRec8.Open strSQL, objConn, 3, 1, 1
       
    while not objRec8.EOF
        if CInt(objRec8("id")) = CInt(sidemenu) then
            response.write "<span class=""menuChosen""><a href=""dokumenter.asp?topmenu="& intID &"&amp;undermenu="& intID2 &"&amp;dokid="& objRec8("id") &"&amp;grpid="& intGrpID &""" class=""menuLvl3Open"">"& objRec8("titel") &"</a></span>"
   
'Opreter forbindelse til submenu
            set objRec9 = server.createobject("ADODB.recordset")
            strSQL = "SELECT * FROM hjemmeside_dokumenter WHERE menu_sidesub = '"& objRec8("id") &"' ORDER BY sortering_side ASC"
            objRec9.Open strSQL, objConn, 3, 1, 1
   
If Request.Querystring("sidemenusub") = "" then
    intSidemenusub = "1"
Else
    intSidemenusub = Request.Querystring("sidemenusub")
End if
   
            while not objRec9.EOF
                if CInt(objRec9("id")) = CInt(intSidemenusub) then
                    response.write "<span class=""menuChosen""><a href=""dokumenter.asp?topmenu="& intID &"&amp;undermenu="& intID2 &"&amp;dokid="& objRec9("id") &"&amp;grpid="& objRec9("id") &"&sidemenusub="& sidemenusub &"&amp;goback=yes"" class=""menuLvl4Open"">"& objRec9("titel") &"</a></span>"
                else
                    response.write "<span class=""menu""><a href=""dokumenter.asp?topmenu="& intID &"&amp;undermenu="& intID2 &"&amp;dokid="& objRec9("id") &"&amp;grpid="& objRec9("id") &"&sidemenusub="& sidemenusub &"&amp;goback=yes"" class=""menuLvl4None"">"& objRec9("titel") &"</a></span>"
                end if
            objRec9.MoveNext
            Wend
        objRec9.close
   
        else
            response.write "<span class=""menu""><a href=""dokumenter.asp?topmenu="& intID &"&amp;undermenu="& intID2 &"&amp;dokid="& objRec8("id") &"&amp;grpid="& intGrpID &""" class=""menuLvl3Closed"">"& objRec8("titel") &"</a></span>"
        end if
    objRec8.MoveNext
    Wend
objRec8.close   
       
    response.write "</td>"


Håber der er nogen som kan hjælpe med denne satan.
Avatar billede johny Nybegynder
08. februar 2011 - 23:13 #1
Hmm, så vidt jeg kan se, er det ikke kun menuen der er problemet, men også din url og db struktur, da denne også er forholdsvis hardcoded til kun at køre i 2 niveauer, ud fra hvad jeg lige kan se.

Du siger det er menuen du vil lave om, men har du et link til en side der ligger på 3. niveau? Og kan du evt. skrive tabel strukturen her, så jeg lige kan se om du har nogle ekstra muligheder som ikke fremgår af koden?

Umiddelbart ville jeg skrive det en hel del om, for det at du bruger integer som id på hvert niveau, der er lidt at skyde sig selv i foden. Hvis du er ligeglad med links til siden, så er det helt klart en overvejelse værd. Hvis ikke, så må vi se hvad vi kan finde ud af. :)
Avatar billede bodyguard Nybegynder
24. marts 2011 - 15:56 #2
Vi lukker :)
Avatar billede johny Nybegynder
26. marts 2011 - 16:28 #3
ok, fandt du ud af det? For stillede en del spørgsmål jeg aldrig fik svar på? :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester