webForumDet fria alternativet

Lista från en databas fråga

ASP

10 svar · 171 visningar · startad av His Divine Shadow

Medlem sedan sep. 20004 079 inlägg
Frågan#1

Jag skulle vilja ha en speciell listning, jag har en tabell och jag vill att då jag listar från en databas så ska 3 st. poster listas på bredden innan det börjar med en ny "rad".

------------------
His Divine Shadow is the most despicable being ever created.(så sade en fan)

Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan dec. 19996 522 inlägg
#2

Du får helt enkelt lägga till en räknare som räknar till 3 då skapar han en ny rad i tabellen om den är över 3, sen nollar du den och kör om den igen tills den blir 3 eller högre...

------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !

Medlem sedan sep. 20004 079 inlägg
#3

eh...

------------------
His Divine Shadow is the most despicable being ever created.(så sade en fan)

Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan mars 2001243 inlägg
#4

Helt otestad kod men kan fungera...

Dim iRaknare, iSlutTal
iRaknare = 0
iSlutTal = 3

For iRaknare T0 iSlutTal
Response.Write objRS("blabla") & " "
If iRaknare = iSlutTal Then
Response.Write "<BR>"
End If
Next

------------------
Ar i USA for tillfallet, kan ej anvanda svenska tecken, sorry...

Medlem sedan mars 2001243 inlägg
#5

Blev lite osäker, kanske ska vara så här istället...

Dim iRaknare, iSlutTal
iSlutTal = 3
For iRaknare = 0 T0 iSlutTal
Response.Write objRS("blabla") & " "
If iRaknare = iSlutTal Then
Response.Write "<BR>"
End If
Next

------------------
Ar i USA for tillfallet, kan ej anvanda svenska tecken, sorry...

Medlem sedan sep. 20004 079 inlägg
#6

Det ska inte va en <BR> utan en ny <TR>

ungefär såhär:
<TR>
<TD>info från DB<TD>
<TD>info från DB<TD>
<TD>info från DB<TD>
<TR>
Och så börjar det på nytt igen och på detta vis skapar flera rader, eller "rows"

------------------
His Divine Shadow is the most despicable being ever created.(så sade en fan)

Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan sep. 20004 079 inlägg
#7

hey, jag har gjort framsteg:

				<tr>
					<td>
					<center><font face="Verdana" size="1"><b><%=RS("Benämning_10")%></b>
					<br>
					<img src="../produkter/<%=RS("Extra_8")%>">
					<br>
					Pris: <b><%=pris%></b>
					</td>

					<%RS.MoveNext%>

					<td>
					<center><font face="Verdana" size="1"><b><%=RS("Benämning_10")%></b>
					<br>
					<img src="../produkter/<%=RS("Extra_8")%>">
					<br>
					Pris: <b><%=pris%></b>
					</td>

					<%RS.MoveNext%>

					<td>
					<center><font face="Verdana" size="1"><b><%=RS("Benämning_10")%></b>
					<br>
					<img src="../produkter/<%=RS("Extra_8")%>">
					<br>
					Pris: <b><%=pris%></b>
					</td>
				</tr>
				<%
				RS.MoveNext
				Loop
				Conn.Close
				%>
			</table>

Problemet är att om det inte finns så pass många poster så att det blir 3 på varje rad, så då kommer detta fram bland posten:

ADODB.Field error '80020009'

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

?

Jag har försökt med nån sorts IF sats men det vill inte funka.

------------------
His Divine Shadow is the most despicable being ever created.(så sade en fan)

Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

[Redigerat av His Divine Shadow den 08 jan 2002]

Medlem sedan dec. 19996 522 inlägg
#8

Du får helt enkelt göra en recordcount på rs:et innan du loopar igenom resultatet typ..

IntCount = Rs.RecordCount
If IntCount > 3 Then
'skriv ut tabellen med räknaren och ny tabellrader efter var 3:e träff
Else
'skriv endast ut resultaten brevid varandra i en tabell med ett <tr>
End If

Nu är ju inte denna koden så som det egentligen skall vara utan sök på recordcount eller räkna poster eller något så ser du hur du får fram antalet poster i rs:et. Det brukar bli problem med att den hela tiden returnerar -2 eller -1, det beror på att du måste öppna rs:et på ett visst sätt. Sök och du skall finna ;)

------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !

Medlem sedan sep. 20004 079 inlägg
#9

Men om det är 2 st. på en rad och inte 3?
Går det inte att kolla innan Rs.MoveNext om det är slut eller nått?

------------------
His Divine Shadow is the most despicable being ever created.(så sade en fan)

Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

Medlem sedan dec. 200012 464 inlägg
#10

efter varje rs.movenext så får du lägga in en if-sats

if rs.eof then exit do

------------------
essentitia preter non sans multiplicandum

Medlem sedan sep. 20004 079 inlägg
#11

perfect! thx! :)

------------------
His Divine Shadow is the most despicable being ever created.(så sade en fan)

Sprit löser inga problem. Men det gör inte mjölk heller.

T-bird 1200; GeForce 256 32MB; WinNT4/XP; 512MB RAM; Dialup

273 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)