31. juli 2004 - 15:11Der er
8 kommentarer og 1 løsning
udskriv i koloner
udskriv i koloner
Nedestående kode skriver ud således: 1|2|3 4|5|6
hvordan får jeg den til at udskrive således: 1|3|5 2|4|6
strSQL = "Select * From users order by strNavn" Set rs = Conn.Execute(strSQL) maxAntalRows=50 maxPrRow=4 antal=0
do while not rs.EOF and antal < (maxAntalRows*maxPrRow)
if antal mod maxPrRow = 0 then response.write "<tr>" response.write "<td width='150' class='tbl_level2'><A Href='find_person.asp?ebruger=" & rs("strBruger")& "'>" & rs("strNavn")& "</td>" antal = antal+1 if antal mod maxPrRow = 0 then response.write "</tr>" rs.Movenext loop if antal mod maxPrRow > 0 then response.write "</tr>" response.write "</table>" ' nu er data hentet ud, så lukke vores connection igen Conn.Close Set Conn = Nothing
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
Slettet bruger
31. juli 2004 - 18:49#1
Det ser dog utroligt rodet ud... og er du helt sikker på, at der bliver trukket 6 records ud med den kode? Umiddelbart kan jeg kun se 2 rs: rs("strBruger") og rs("strNavn")
Desuden er det ukorrekt HTML-kode, som højst kun vil fungere i IE.
Skal jeg lave et loop til dig, hvor du kan trække hver rs ud, på den opstilling du beskriver øverst? I så fald, skal jeg vide hver enkelt rs du vil trække ud.
Synes godt om
Slettet bruger
31. juli 2004 - 19:22#2
Her er den færdige kode:
<% ' Dansk datoformat : Session.LCID = 1030
' Databaseforbindelse + sti til databasen : ' Den kender du selv, Gizom Conn.Open DSN
' SQL forespørgsel : strSQL = "Select * From users order by strNavn"
' Udfør forespørgsel (rs indeholder nu resultatet) : Set rs = Conn.Execute(strSQL)
extend:> jeg ved ikke om jeg har skrevet det så det kan misforståes, men sagen er at jeg ikke med sikkerhed kan sige om der er 6 poster i tabellen eller 100 (rs("strnavn")), det jeg vil er, at udskrive alle poster i 3 rækker: 1/3 del i første række 1/3 del i anden række og sidste 1/3 del i tredie række. håber det er til at forstå!
'Tæl antal af poster: strSQL = "Select count(*) as antal From users" Set rs = Conn.Execute(strSQL) totalAntal=rs("antal") strSQL = "Select * From users order by strNavn" Set rs = Conn.Execute(strSQL) maxCols = 3 noRowsPrCol=0 'tæller som bruges i forbindelse med udskrift maxRowsPrCol = Int(totalAntal/maxCols) if totalAntal mod maxCols > 0 then maxRowsPrCol=maxRowsPrCol+1
Response.Write "<table><tr>" do while not rs.EOF if noRowsPrCol mod maxRowsPrCol = 0 then response.write "<td>" response.write "<table>" end if Response.Write "<tr>" response.write "<td width='150' class='tbl_level2'><A Href='find_person.asp?ebruger=" & rs("strBruger")& "'>" & rs("strNavn")& "</td>" response.write "</tr>"
noRowsPrCol=noRowsPrCol+1 if noRowsPrCol mod maxRowsPrCol = 0 then response.write "</table>" response.write "</td>" end if rs.movenext loop Response.write "</tr></table>"
Ja så skal der vist tilføje en valign til tabellen sådan dette: if noRowsPrCol mod maxRowsPrCol = 0 then response.write "<td>" response.write "<table>" end if
Bliver til: if noRowsPrCol mod maxRowsPrCol = 0 then response.write "<td valign=""top"">" response.write "<table>" end if
valig="top" er måske ikke den bedste løsning, tabellen bliver heller ikke afsluttet helt rigtigt når jeg lige kigger på det så prøv sådan her i stedte for så skulle tabelerne også blive afsluttet korrekt:
'Tæl antal af poster: strSQL = "Select count(*) as antal From users" Set rs = Conn.Execute(strSQL) totalAntal=rs("antal") strSQL = "Select * From users order by strNavn" Set rs = Conn.Execute(strSQL) maxCols = 3 noRowsPrCol=0 'tæller som bruges i forbindelse med udskrift maxRowsPrCol = Int(totalAntal/maxCols) if totalAntal mod maxCols > 0 then maxRowsPrCol=maxRowsPrCol+1
Response.Write "<table><tr>" do while not rs.EOF if noRowsPrCol mod maxRowsPrCol = 0 then response.write "<td>" response.write "<table>" end if Response.Write "<tr>" response.write "<td width='150' class='tbl_level2'><A Href='find_person.asp?ebruger=" & rs("strBruger")& "'>" & rs("strNavn")& "</td>" response.write "</tr>"
noRowsPrCol=noRowsPrCol+1 if noRowsPrCol mod maxRowsPrCol = 0 then response.write "</table>" response.write "</td>" end if rs.movenext loop for i=noRowsPrCol to maxCols*maxRowsPrCol-1 Response.Write "<tr><td class='tbl_level2'> </td></tr>" if i = maxCols*maxRowsPrCol-1 then response.write "</table>" response.write "</td>" end if next Response.write "</tr></table>"
<% 'Tæl antal af poster: strSQL = "Select count(*) as antal From users" Set rs = Conn.Execute(strSQL) totalAntal=rs("antal") strSQL = "Select * From users order by strNavn" Set rs = Conn.Execute(strSQL) maxCols = 3 noRowsPrCol=0 'tæller som bruges i forbindelse med udskrift maxRowsPrCol = Int(totalAntal/maxCols) if totalAntal mod maxCols > 0 then maxRowsPrCol=maxRowsPrCol+1
Response.Write "<table><tr>" do while not rs.EOF if noRowsPrCol mod maxRowsPrCol = 0 then response.write "<td valign='top'>" response.write "<table>" end if Response.Write "<tr>" response.write "<td width='150' class='tbl_level2'><A Href='find_person.asp?ebruger=" & rs("strBruger")& "'>" & rs("strNavn")& "</td>" response.write "</tr>"
noRowsPrCol=noRowsPrCol+1 if noRowsPrCol mod maxRowsPrCol = 0 then response.write "</table>" response.write "</td>" end if rs.movenext loop for i=noRowsPrCol to maxCols*maxRowsPrCol-1 Response.Write "<tr><td class='tbl_level2'> </td></tr>" if i = maxCols*maxRowsPrCol-1 then response.write "</table>" response.write "</td>" end if next Response.write "</tr></table>" %>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.