Avatar billede simsen Mester
15. januar 2005 - 19:25 Der er 1 løsning

Menu igen igen

Jeg har prøvet at lave eagleeyes menu opstilling ( http://eksperten.dk/spm/439239 ) men får en fejl, når jeg prøver at trykke på første menupunkt (altså hvor den skal ekspande submenus). Fejlen den fremkommer med: Der opstod en Microsoft VBScript-kørselsfejl fejl '800a000d'

Typer stemmer ikke overens: 'linksrs'

/Georg/framemenu.asp, line 59

Koden ser ud som følger:

<!-- #include file="Administration/subrutiner.asp" -->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
        "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
  <!-- Minus AutoDato -->
  <TITLE>Meister Neud</TITLE>
 
  <LINK HREF="Stylesheets/Stylesheet.css" REL="stylesheet" TYPE="text/css">
    <meta name="Generator" content="Stone's WebWriter 4">
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

    <table width="100%" border="0" cellpadding="0" cellspacing="0">
    <tr>
        <td width="95%" height="140" align="center" colspan="2"></td>
    </tr>
    <tr bgcolor="#F0F0F0">
        <td width="10%"></td>
        <td width="90%" align="left">
<%
OpenCon

menuID = Replace(Request.QueryString("id"),"'","")
submenuID = Replace(Request.QueryString("sid"),"'","")

SQL = "SELECT * FROM aa_menu ORDER BY id"
Set rs = Conn.Execute(SQL)

menu_target = "main"

do while not rs.EOF
  Response.Write "<a href=""?id=" & rs("id") & """>" & rs("menunavn") & "</a>"
  Response.Write "<br>"
 
  if Int("0" & menuID) = Int(rs("id")) then 
    'Udskriver submenuer til den valgte menu
    Set subrs = Conn.Execute("SELECT * FROM aa_submenu WHERE menuID = " & rs("id"))
    do while not subrs.EOF
      Response.Write " - <a href=""?id=" & rs("id") & "&sid=" & subrs("id") & """>" & subrs("submenunavn") & "</a>"
      Response.Write "<br>"
      if Int("0" & submenuID) = Int(subrs("id")) then 
        'Udskriver links til den valgte menu og submenu
        Set linksrs = Conn.Execute("SELECT * FROM aa_link WHERE submenuID = " & rs("id"))
        do while not linksrs.EOF
          Response.Write " -- <a href=""" & linksrs("link") & " target=""" & menu_target & """>" & linksrs("linknavn") & "</a>"
          Response.Write "<br>"
          linksrs.Movenext
        loop   
      end if
      subrs.Movenext
    loop   

    'Udskriver links til den valgte menu som ikke har en submenu
    Set subrs = Conn.Execute("SELECT * FROM aa_link WHERE menuID = " & rs("id"))
    do while not subrs.EOF
      Response.Write " -- <a href=""" & linksrs("link") & " target=""" & menu_target & """>" & linksrs("linknavn") & "</a>"
      Response.Write "<br>"
      subrs.Movenext
    loop   

  end if

  rs.Movenext
loop

Conn.Close
Set Conn = nothing
%>

        </td>
    </tr>
    </table>
</body>
</HTML>

Min tables ser ud som følgende:

aa_menu
id : Autonummer
menunavn: tekst

Indhold i aa_menu:
1 Menu 1
2 Menu 2
3 Menu 3

aa_submenu
id: Autonummer
menuid: Tal (opslag til aa_menu id)
submenunavn: tekst

Indhold i aa_submenu:
id    menuid    submenunavn
1    1    Undermenu 1.1
2    2    Undermenu 2.1
3    2    Undermenu 2.2
4    2    Undermenu 2.3
5    3    Undermenu 3.1
6    3    Undermenu 3.2

aa_link
id: Autonummer
menuid: Tal (opslag til aa_menu id)
submenuid: Tal (opslag til aa_submenu id)
linknavn: tekst
link: tekst

Indhold i aa_link:
id    menuid    submenuid    linknavn    link
1    2    0    Undermenu 1.1    http://www.1-1.dk
2    2    0    Undermenu 2.1    http://www.2-1.dk
3    2    0    Undermenu 2.2    http://www.2-2.dk
4    2    0    Undermenu 2.3    http://www.2-3.dk
5    3    0    Undermenu 3.1    http://www.3-1.dk
6    3    0    Undermenu 3.2    http://www.3-2.dk

Linien som er fejl i er :

Response.Write " -- <a href=""" & linksrs("link") & " target=""" & menu_target & """>" & linksrs("linknavn") & "</a>"

Hvor laver jeg noget galt?
Avatar billede simsen Mester
16. januar 2005 - 19:14 #1
Forsøger at omformulere mit spørgsmål :-)
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