kan du prova att lägga ner <%RecSet.Close
%>
längst ner på sidan?
kan vara att du avsluta recset för snabbt.. sidan kanske behöver recset fortfarande..
4 svar · 153 visningar · startad av FIgg3
Tjenare skulle behöva lite hjälp här...
När ja kör denna koden
<% if Request.QueryString("read") = "main" then%>
<br>
<font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><b>04 FORUM</b></font><br>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr bgcolor="#CCCCCC">
<td width="25%"><b><font size="-2" face="verdana"> Rubrik </font></b></td>
<td width="19%"><b><font size="-2" face="verdana"> Namn </font></b></td>
<td width="17%"><b><font size="-2" face="verdana">Läst </font></b></td>
<td width="18%"><b><font size="-2" face="verdana"> Svar </font></b></td>
<td width="21%"><b><font size="-2" face="verdana"> Datum </font></b></td>
</tr>
</table>
<%
file = Server.MapPath("forum.mdb")
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& file
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM forum where reid = 0 ORDER BY ID DESC"
RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
Do until RecSet.EOF
color = color + 1
If color Mod 2 = 0 then
colorbg = "#E2E2E2"
Else
colorbg = "#FFFFFF"
End If
rubrik = left(Recset("Rubrik"),7) & "..."
%>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="<%=colorbg%>" width="25%"><font size="-2" face="verdana"> <font color="#FF0000"></font>
<a href="forum.asp?read=post&ID=<%=RecSet("ID")%>"><%=rubrik%></a></font></td>
<td bgcolor="<%=colorbg%>" width="19%"><font size="-2" face="verdana"> <%=RecSet("namn") %>
</font></td>
<td bgcolor="<%=colorbg%>" width="17%"><font size="-2" face="verdana"><%=RecSet("count") %>
</font></td>
<td bgcolor="<%=colorbg%>" width="18%"><font size="-2" face="verdana"> <%=RecSet("svar") %>
</font></td>
<td bgcolor="<%=colorbg%>" width="21%"><font size="-2" face="verdana"> <%=RecSet("date") %>
</font></td>
</tr>
<%
RecSet.movenext
Loop
Recset.close
Set RecSet = nothing
end if
%>
</table>
<p><br>
</p>
<p>
<%
if Request.QueryString("read") = "post" then
ID2 = Request.QueryString("id")
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("forum.mdb")&";"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From forum WHERE id="&ID2
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
count = RecSet("count") + 1
RecSet("count") = count
%>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="25%" bgcolor="#CCCCCC"><b><font size="-2" face="verdana"> Rubrik
</font></b></td>
<td width="19%" bgcolor="#CCCCCC"><b><font size="-2" face="verdana"> Namn
</font></b></td>
<td width="17%" bgcolor="#CCCCCC"><b><font size="-2" face="verdana">Läst
</font></b></td>
<td width="18%" bgcolor="#CCCCCC"><b><font size="-2" face="verdana"> Svar
</font></b></td>
<td width="21%" bgcolor="#CCCCCC"><b><font size="-2" face="verdana"> Datum
</font></b></td>
</tr>
<tr>
<td width="25%"><font size="-2" face="verdana"><%=RecSet("Rubrik")%></font></td>
<td width="19%"><font size="-2" face="verdana"><%=RecSet("namn") %></font></td>
<td width="17%"><font size="-2" face="verdana"><%=RecSet("count") %></font></td>
<td width="18%"><font size="-2" face="verdana"><%=RecSet("svar") %></font></td>
<td width="21%"><font size="-2" face="verdana"><%=RecSet("date") %></font></td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="#E2E2E2"><font size="-2" face="verdana">
<%=forumKod(RecSet("mess"))%></font></td>
</tr>
</table>
<font size="1" face="Verdana"><i>
<% If RecSet("Svar") = 0 Then %>
Det finns inga svar på denna frågan än!!!</i><b>
<%Else%>
</b></font>
<% If RecSet("Svar") > 0 Then
RecSet.Close
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From forum ORDER BY datum "
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
%>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<%
Do Until RecSet.EOF
If int(RecSet("reid")) = int(ID2) Then
%>
<tr>
<td bgcolor="#CCCCCC" width="41%"><b><font size="-2" face="verdana"> Namn:</font></b><font size="-2" face="verdana">
<%=RecSet("namn") %></font></td>
<td bgcolor="#CCCCCC" width="34%"><b><font size="-2" face="verdana"> Datum:
</font></b><font size="-2" face="verdana"><%=RecSet("date") %></font></td>
</tr>
<tr bgcolor="#E2E2E2">
<td colspan="2"><font size="-2" face="verdana"> <%=forumKod(RecSet("mess"))%></font></td>
</tr>
</table>
<%
End If
RecSet.MoveNext
Loop
%>
<br>
<%End If%>
<%End If%>
<br>
<font size="1" face="Verdana"><b><font face="Verdana" size="2"><font size="-2">Svar
på detta inlägg:</font></font></b></font>
<form method="post" action="compose.asp?ID=svar&reid=<%=id2%>">
<font size="1" face="Verdana"><br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td width="85"><font face="Verdana" size="1">Namn:</font></td>
<td width="281"> <font face="Verdana" size="1">
<input type="text" name="namn" class="textE" maxlength="45">
</font></td>
</tr>
<tr valign="top">
<td width="85"><font face="Verdana" size="1">E-post:</font></td>
<td width="281"> <font face="Verdana" size="1">
<input type="text" name="mail" class="textE" maxlength="80" value="@">
</font></td>
</tr>
<tr valign="top">
<td width="85" valign="middle"><font face="Verdana" size="1">Inlägg:</font></td>
<td width="281"> <font face="Verdana" size="1">
<textarea name="medelande" cols="30" rows="6" wrap="VIRTUAL" class="textE"></textarea>
</font></td>
</tr>
<tr valign="top">
<td width="85"><font size="1"></font></td>
<td width="281"> <font face="Verdana" size="1">
<input type="submit" name="Submit" value="Skriv inlägg" class="textE">
</font></td>
</tr>
</table>
</font>
</form>
<% End If %>
(Ursäkta mycket kod) så får ja detta fel meddelandet:
Feltyp:
ADODB.Recordset (0x800A0C93)
Åtgärden är inte tillåten i det här sammanhanget.
/forum.asp, line 130
Rad 130 är:
RecSet.Close
Och den koden siter i hop med
<% If RecSet("Svar") > 0 Then
RecSet.Close
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From forum ORDER BY datum "
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
%>
MVH
kan du prova att lägga ner <%RecSet.Close
%>
längst ner på sidan?
kan vara att du avsluta recset för snabbt.. sidan kanske behöver recset fortfarande..
tack men det fungera ej fick samma fel mess...
kan man stänga och sen öppna den igen??? prova byt namn på recset till recset2 eller ngt...
Jag tror att du snabbare kan få hjälp om du förenklar för de som försöker hjälpa dig genom att t.ex. endast posta relevant kod eller markera den felande raden i fetstil.