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?
