Calippo Medlem sedan aug. 2002 536 inlägg Frågan 14 maj 2008 10:22 #1 Har hjärnsläpp och behöver hjälp fort.
Har 8st fält i en databas, vi kan kalla dem:
strText1
strText2
.....
strText8
Jag vill lopa ut dem så att jag bara behöver skriva
For x=1 to 8
response.write strText (Och så ska värdet i x hamna här så att det blir strText1, strText2 osv för varje Next)
Next
For x = 1 to 8
Response.Write [b]RecordSet[/b]("strText" & x)
Next
Byt ut Recordset till det namn som du har gett till ditt Recordset.
Calippo Medlem sedan aug. 2002 536 inlägg Jag skriver tidigare i koden
strText1=Rs("strText1")
strText2=Rs("strText2")
så när jag försöker använda
<%For x=1 to 8%>
<%=strText & x%>
<%Next%>
så blir det bara 1,2,3 (värdet på x) osv.
Värdet ur databasen hämtas inte.
"Response.Write RecordSet("strText" & x)" funkar, men kan man få det att fungera utan att behöva skriva Recordset...
spango Medlem sedan juni 2000 8 205 inlägg Nej. Skriv så lite som möjligt, men inte mindre...
Dim a1, a2, a3
a1 = "Hej"
a2 = "på"
a3 = "dig"
For i = 1 to 3
Response.Write eval("a" & i) & " "
Next
'Skriver ut "Hej på dig"
Men du har ju redan skapat ett Recordset:
For x = 1 to 8
Response.Write rs("StrText" & x )
Next
spango Medlem sedan juni 2000 8 205 inlägg
voigtann1 skrev:
Dim a1, a2, a3
a1 = "Hej"
a2 = "på"
a3 = "dig"
For i = 1 to 3
Response.Write eval("a" & i) & " "
Next
'Skriver ut "Hej på dig"
Det här är ett praktexempel på när man försöker "förenkla" något mer än vad faktiskt är möjligt, gör på rätt sätt istället och använd en array :) Eval är ondska och ska inte användas under annat än verkligt exceptionella omständigheter. (Jag vet att exemplet här bara var för att illustrera hur man kan göra - jag tror att vi alla är överens om att det inte är så här man ska göra...)
K K@llen Medlem sedan mars 2003 2 667 inlägg
Calippo skrev:
Har 8st fält i en databas, vi kan kalla dem:
strText1
strText2
.....
strText8
Jag vill lopa ut dem så att jag bara behöver skriva
For x=1 to 8
response.write strText (Och så ska värdet i x hamna här så att det blir strText1, strText2 osv för varje Next)
Next
Det låter fel redan i strukturen av databasen. Låt varje värde få en egen rad i tabellen i stället för en egen kolumn. :)