Rada upp 2 gånger

ASP

2 svar · 251 visningar · startad av Rinaldo

Medlem sedan mars 20014 214 inlägg
Trådstart#1

Jag ska rada upp alla tillgängliga forum på en sida... Först gör jag det i en dropdown:

<SELECT NAME="meny" onChange="self.location.href=this.options[this.selectedIndex].value;">
<OPTION VALUE="">Snabbval
<%Do While Not RecSet.EOF %>
<OPTION VALUE=""><% =RecSet("Forumnamn") %></option>
<% RecSet.MoveNext %>
<% Loop %>
</SELECT>&nbsp;

Då funkar det utmärkt. Sen ska jag göra det en gång till helt normalt...

<%Do While Not RecSet.EOF %>
<%=RecSet("Forumnamn") %>
<% RecSet.MoveNext %>
<% Loop %>

Då visar ingeting. Kan man inte skriva ut detta 2 gånger på samma sida. Objektet är öppet..

Medlem sedan jan. 2001332 inlägg
#2

Hmm...
Eftersom du redán har loopat igenom recordsetet tills det blev .EOF kommer du inte att kunna loopa det en gång till... Det är ju redan .EOF!

Testa att lägga in:

<% RecSet.MoveFirst %>

Innan du loopar det för andra gången...

Medlem sedan dec. 19998 577 inlägg
#3

Detta är onödigt svårt att läsa, och inte speciellt uppsnabbande för servern:

<%Do While Not RecSet.EOF %>
<%=RecSet("Forumnamn") %>
<% RecSet.MoveNext %>
<% Loop %>

Använd detta istället, ett bättre sätt att koda:

<%
RecSet.MoveFirst
Do While Not RecSet.EOF
Response.write RecSet("Forumnamn")
RecSet.MoveNext
Loop
%>
251 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)