webForumDet fria alternativet

2xLoop i samma tabell!

ASP

8 svar · 256 visningar · startad av M.Cheraghi

Medlem sedan juli 20015 107 inlägg
Frågan#1

Sitter och funderar ut hur jag ska gå till väga.
jag har en tabell i den är det lagrat lite olika saker.
Jag vill loopa ut dessa i två omgångar. För varje loop skriva ut särskild information.

När man väl har loopat en gång, så är man ju i slutet på recordsetet, och så vill jag gärna flytta upp han igen för att börja på en ny loop. Kod exempel på hur jag vill att det ska se ut!
Jag vill helst slippa att skapa två SQL Select satser. Man borde väl på något sätt kunna köra en "RS.moveTop" eller något liknande!

'## Loop 1
Do until RS.eof
     'massa asp kod
RS.movenext
loop

'## Loop 2
Do until RS.eof
     'massa asp kod
RS.movenext
loop

10-4 over and out

Medlem sedan nov. 20017 144 inlägg
#2

Du kan kanske använda getrows med en array.

 <%
Function GetRows(ByVal SQL)
		Dim arrRecords, rs	
		Set Connection = Server.CreateObject("ADODB.Connection")
		Connection.Open ("DRIVER={MySQL ODBC 3.51 Driver};DATABASE=******;UID=******;PWD=******;SERVER=min.server.com;")		
		Set rs = Connection.Execute(SQL)
			If Not rs.BOF Or Not rs.EOF Then
				arrRecords = rs.GetRows()
			ELSE
				arrRecords = ""
			End If		
		rs.Close : Set rs = nothing
		Connection.Close : Set Connection = nothing
		GetRows = arrRecords 
End Function
X=0
myArr = GetRows("SELECT ett,tva,tre FROM tabell")

'Min första loop
	For X = 0 To Ubound(myArr,2)		
			Response.write "Loop ett: "& myArr(0,X) & " | " & myArr(1,X) & " | " & myArr(2,X) & "<br>"
	Next 
	X=0
	
'Min andra loop
	For X = 0 To Ubound(myArr,2)		
			Response.write "Loop två: "& myArr(0,X) & " | " & myArr(1,X) & " | " & myArr(2,X) & "<br>"
	Next 
%>
Medlem sedan nov. 20017 144 inlägg
#3

Kolla med: IsArray(myArr) innan lopen också.

Medlem sedan juli 20015 107 inlägg
#4

Hooookay! Det är va way more advanced än jag trodde!
Ska fnula lite med det hela och kolla vad jag kommer fram till :)

en kort fråga innan jag sätter mig in och gör bort mig själv, denna kod

'Min första loop
	For X = 0 To Ubound(myArr,2)		
			Response.write "Loop ett: "& myArr(0,X) & " | " & myArr(1,X) & " | " & myArr(2,X) & "<br>"
	Next 
	X=0

Istället för response.write, skall jag ha lite HTML tabeller, osv, kan jag använda RS("kolumnnamn") på vanligt vis?
Eller är det mer avancerat än så? :)

Tack för ditt svar Jesper

Medlem sedan nov. 20017 144 inlägg
#5

M.Cheraghi skrev:

kan jag använda RS("kolumnnamn") på vanligt vis?

Hur gör man då? ;)

Medlem sedan juli 20015 107 inlägg
#6

Jesper T skrev:

M.Cheraghi skrev:

kan jag använda RS("kolumnnamn") på vanligt vis?

Hur gör man då? ;)

Hehe, blev bara lite fundersam när jag såg

..... myArr(0,X) & " | " & myArr(1,X) .....

Jamen dåså, ddå ska det väl antagligen inte vara några problem :)

Medlem sedan nov. 20017 144 inlägg
#7

Men det är inte svårare.
myArr(0,X) motsvarar RS("ett")
myArr(1,X) motsvarar RS("tva")
myArr(2,X) motsvarar RS("tre")

SELECT ett,tva,tre FROM tabell

Medlem sedan juli 20015 107 inlägg
#8

Jesper T skrev:

Men det är inte svårare.
myArr(0,X) motsvarar RS("ett")
myArr(1,X) motsvarar RS("tva")
myArr(2,X) motsvarar RS("tre")

SELECT ett,tva,tre FROM tabell

Där ser man :)
Danke schöön, ska testa o leka lite och försöka få ihop det med övrig kod :) återkommer om jag kör fast!

Medlem sedan nov. 20017 144 inlägg
#9

     

271 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
135 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
136 ms — ändringar (db)