Kommer inte på något bra sätt på det jag vill göra. Så därför frågar jag här. Det jag vill göra är att när en medlem loggar in på en sida så ska jag kolla om session("username") finns i kolumnen varvar i tabellen varvningar. Om den finns i den kolumnen så vill jag kolla vad namnet är i kolumnen agare i den posten. Och göra det namnet som finns i kolumnen agare till variablen varvade. Men om det finns flera session("username") i kolumen varvar så får jag göra flera variablar på något sätt. Säg till om ni inte fattar så kan jag beskriva mer.
Detta använder man väl en array till, för att göra det smidigast.
SQL = "SELECT * FROM varvningar WHERE varvar = '" & session("username") & "'"
set rs = conn.execute(SQL)
do until rs.eof
intAntal = intAntal + 1
rs.movenext
loop
rs.movefirst
dim varArray()
redim varArray(intAntal)
i = 0
do until rs.eof
varArray(i) = rs("agare")
i = i + 1
rs.movenext
loop
rs.close
set rs = nothing
Hel otestat. Om jag förstått det rätt.
varArray(0) innehåller första värdet
varArray(1) innehåller andra värdet
osv.. (arrayer börjar alltid räkna på 0)
Förutsätter att du skapar en conn-string ovanför. Kunde gjorts utan fullösningen med att räkna antalet poster, genom att öppna med annan cursortype, men jag orkade inte. ;)
for i = lbound(strArray) to ubound(strArray)
SQL = "SELECT * from members where username = '"&varArray(i)&"'"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
poang = RecSet("poang") + 1
RecSet.Close
strSQL="UPDATE members SET poang = "& poang &" WHERE username = '"&varArray(i)&"' "
Connect.execute (strSQL)
next
Funktionerna lbound() och ubound() returnerar ett värde som motsvarar den första postens nummer i arrayen samt den sista. Detta för att kunna loopa igenom hela arrayen utan att hamna utanför gränserna när det gäller hur många poster den innehåller.
131 ms totalt · 3 externa anrop · v20260731065814-full.55e59744