En sub exekverar bara koden och för ingenting tillbaks till din sida... det du vill använda är en 'function'... den funkerar likadant, bara det att du måste omfamna argumenten med paranteser:
<%
'--------------------------------------------------
' Öppna databasen
'--------------------------------------------------
password = "xxx"
databas = "xxx"
DBPath = Server.Mappath(mid(Request.ServerVariables("PATH_INFO"),1,instrrev(Request.ServerVariables("PATH_INFO"), "\")) & databas)
Set MinCon=Server.CreateObject("ADODB.Connection")
MinCon.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & DBPath & ";uid=;pwd=" & password & ";"
Function VisaBarnMeddelanden(Forelder,Niva)
Dim databas
Set databas = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * From FORUM WHERE Forelder=" & Forelder & " ORDER BY Datum DESC"
databas.Open SQL, MinCon, 1, 2
Do While Not databas.EOF
Response.Write "<tr>"
Response.Write "<td>"
For slinga = 1 to Niva
Response.Write " "
Next
Response.Write "<a href='forum.asp?id=lasa&nr=" & databas("MeddelandeID") & "'>" & databas("Amne") & "</a>"
Response.Write "</td>"
Response.Write "<td nowrap>" & databas("Postare") & "</td>"
Response.Write "<td nowrap>" & FormatDateTime(databas("Datum"),2) & "</td>"
Response.Write "</tr>"
VisaBarnMeddelanden(databas("MeddelandeID"),Niva+1)
databas.MoveNext
Loop
End Function
%>
<table border="0" width="99%" cellpadding="0" cellspacing="0">
<tr>
<td width="60%"><strong>Meddelanden</strong></td>
<td width="20%"><strong>Postat av</strong></td>
<td width="20%"><strong>Datum</strong></td>
</tr>
<%
'--------------------------------------------------
' Anropa subben
'--------------------------------------------------
VisaBarnMeddelanden(0,0)
%>
</table>
Generera följande felmeddelande:
Kompileringsfel i Microsoft VBScript fel '800a0414'
Det går inte att använda parenteser när en Sub anropas.
/Rickard/ricki2/forum.asp, rad 103
VisaBarnMeddelanden(databas("MeddelandeID"),Niva+1)
---------------------------------------------------^