Hej! Jag vill att alla namn som finns i databasen ska radas upp efter varandra, ett visst antal gånger på sidan. Namnen ska hämtas från en databas, men databashämtningen behövs bara göras en gång. Lukaspojken och Anders hjälpte mig för en tid sedan att göra en array för att lösa detta (tack så väldigt mycket) och jag har försökt, men inte lyckats (jag kan ingenting om arrayer). Detta ser säkert heltokigt ut, men varför får jag felmeddelandet "Objektet stöder inte egenskapen eller metoden.: 'EOF'"?
SQLStmt = "select distinct Namn from Users order by namn"
RS = Connection.Execute(SQLStmt)
ArrRS = Connection.Execute(SQLStmt).getrows()
For a = 0 to ubound(ArrRS,2)
Do Until RS.EOF
Response.Write RS("Namn") & "<BR>"
RS.MoveNext
Loop
Du får detta felmeddelande då det inte blir ett recordset av hämtningen med GetRows utan en array.
Testa denna kod:
SQLStmt = "select distinct Namn from Users order by namn"
Set RS = Connection.Execute(SQLStmt)
If Not RS.EOF Then
ArrRS = RS.getrows()
End If
Set RS = Nothing
Connection.Close
Set Connection = Nothing
'## -- denna kod kan du köra vart du vill på sidan
'## där du vill printa ut alla namn --
For I = 0 To UBound(ArrRS,2)
strNamn = ArrRS(0,I)
Response.Write strNamn & "<BR>"
Next
tack så mycket, det fungerade precis som jag ville.
En smärre ändring bara... om jag vill ha med efternamn också, jag har testat att ändra:
SQLStmt = "select distinct Namn, Efternamn from Users order by namn"
och även ändra så det både står:
strNamn = ArrRS(0,I)
strEfternamn = ArrRS(0,I)
och sist:
Response.Write strNamn & "<BR>" & strEfternamn
Jag får bara ut två rader av förnamnet. Vad mer ska jag ändra, något i ArrRS(0,I) kanske, jag fattar inte vad det betyder.