|
| Skrive række 1 - 10 ud i første <td> og 11~ Fra : Peter Larsen |
Dato : 13-03-03 14:58 |
|
Kan det lade sig gøre og hvordan?
Jeg har 20 rækker i min db og de skal skrives ud i forskellige <td>.
Tak
P
| |
Torben Brandt (13-03-2003)
| Kommentar Fra : Torben Brandt |
Dato : 13-03-03 15:10 |
|
Peter Larsen wrote:
> Kan det lade sig gøre og hvordan?
>
> Jeg har 20 rækker i min db og de skal skrives ud i forskellige <td>.
I den løkke, hvor du udskriver rækkerne tæller du bare hvor mange rækker
du har udskrevet.
Når du når til 10, så skriver du Response.Write "</td><td>" og
fortsætter på din løkke.
/Torben
| |
Peter Larsen (13-03-2003)
| Kommentar Fra : Peter Larsen |
Dato : 13-03-03 15:21 |
|
I den løkke, hvor du udskriver rækkerne tæller du bare hvor mange rækker
du har udskrevet.
Når du når til 10, så skriver du Response.Write "</td><td>" og
fortsætter på din løkke.
Kunne du evt. komme med et eks.?
Jeg er ikke så god endnu men prøver at lære
Tak
| |
Torben Brandt (13-03-2003)
| Kommentar Fra : Torben Brandt |
Dato : 13-03-03 15:35 |
|
Peter Larsen wrote:
> I den løkke, hvor du udskriver rækkerne tæller du bare hvor mange rækker
> du har udskrevet.
> Når du når til 10, så skriver du Response.Write "</td><td>" og
> fortsætter på din løkke.
>
> Kunne du evt. komme med et eks.?
>
Jeg er lidt i tvivl om hvordan du vil fordele de 10 første poster i den
første celle og de 10 næste i den anden celle, men her er et eksempel,
hvor de står lige uder hinanden:
' Hent fra databasen
Set rs = conn.Execute("SELECT [felt] FROM [tabel]")
' Start tabel og række
Response.Write "<table><tr>"
' Start første celle i tabellen
Response.Write "<td>"
' Lav en tæller, der tæller antal poster
iPoster = 0
' Udskriv posterne i en løkke
While Not rs.EOF
' Sæt tælleren én op
iPoster = iPoster + 1
' Hvis det er den 11 post, så skal vi lige skrive celle inden
' D.v.s. vi slutter den gamle celle og laver en ny
If iPoster = 11 Then Response.Write "</td><td>"
' Udskriv posten
Response.Write rs("[felt]") & "<br>"
rs.MoveNext
WEnd
' Afslut cellen
Response.Write "</td>"
' Afslut række og tabel
Response.Write "</tr></table>"
' Luk forbindelse til databasen
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
Du må selv udskifte [felt] og [tabel] med de rigtige navne fra databasen.
Mvh Torben
| |
Peter Larsen (13-03-2003)
| Kommentar Fra : Peter Larsen |
Dato : 13-03-03 15:52 |
|
>Du må selv udskifte [felt] og [tabel] med de rigtige navne fra databasen.
Det er bare helt kanon. Tusind tak.
Jeg har dog et spg. mere. Hvad nu hvis den skal ved hvert 10 række indsætte
en ny <td>, hvordan gør jeg så?
Tak og hej
| |
Torben Brandt (13-03-2003)
| Kommentar Fra : Torben Brandt |
Dato : 13-03-03 16:04 |
|
Peter Larsen wrote:
> Jeg har dog et spg. mere. Hvad nu hvis den skal ved hvert 10 række indsætte
> en ny <td>, hvordan gør jeg så?
>
Vi laver det om til:
' Start tabel og række
Response.Write "<table><tr>"
' Lav en tæller, der tæller antal poster
iPoster = 0
' Udskriv posterne i en løkke
While Not rs.EOF
' Hvis vi på nuværende tidspunkt har skrevet 0, 10, 20, 30 rækker,
' så er iPoster modulus 10 lig med 0
' så skal vi starte en ny celle
If (iPoster Mod 10) = 0 Then Response.Write "<td>"
' Sæt tælleren én op
iPoster = iPoster + 1
' Udskriv posten
Response.Write rs("[felt]") & "<br>"
' Hvis vi på nuværende tidspunkt har skrevet 10, 20, 30 rækker, så er
' iPoster modulus 10 lig med 0
' så skal vi slutte cellen, for den må være fuld
If (iPoster Mod 10) = 0 Then Response.Write "</td>"
rs.MoveNext
WEnd
' Hvis den sidste celle ikke blev helt fuld,
' så er den ikke blevet afsluttet
If (iPoster Mod 10) > 0 Then Response.Write "</td>"
' Afslut række og tabel
Response.Write "</tr></table>"
Læg mærke til den lidt mærkelige måde jeg skriver <td> og </td> i løkke
på. Hvis du løber den igennem i hovedet (eller på papir), så kan du se
at det skulle komme til det passe.
If-sætninger kan nu også starte den første og slutte den sidste celle,
så jeg har fjernet nogle linier udenfor i forhold til ddet første eksempel.
mvh Torben
| |
|
|