07. april 2002 - 02:46Der er
3 kommentarer og 2 løsninger
Opdeling af sider...
Er der nogen der kan tilføje koder til dette så siderne automatisk bliver delt op så der kun bliver vist 10 udtræk pr. side. Og henvisninger i bunden af koden, tilbage 1 2 3 og frem bliver aktiveret alt efter hvilken side man er på... Håber i forstår.
<table> <% Set Spoergsmaal = Connection.Execute("Select * From indlaeg Where kategoriid = "& Underkategori("id") &" And tilhoerendetil = 0 And accepteret = 0 Order By dato Desc") Spoergsmaal.MoveFirst Do Until Spoergsmaal.EOF %> <tr> <td><%= Spoergsmaal("titel") %></td> <td><%= Spoergsmaal("dato") %></td> <% Set Indlaeg = Connection.Execute("Select Count(id) As Antal From indlaeg Where tilhoerendetil = "& Spoergsmaal("id") &"") %> <td><%= Indlaeg("Antal") %></td> <% Set Indlaeg = Nothing %> </tr> <% Spoergsmaal.MoveNext Loop Set Spoergsmaal = Nothing %> </table> <table cellpadding="2" cellspacing="1" width="100%"> <tr> <td>Tilbage</td> <td>1 · 2 · 3</td> <td>Frem</td> </tr> </table>
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Nu har jeg lavet koden således men får fejl, hvad er det galt. Det skal lige siges at jeg connecter til en MySQL-database...
<table> <% intPage = Request("page") If isNumeric(intPage) = False Or intPage < 1 Then intPage = 1 End If Set rs = Connection.Execute("Select * From indlaeg Where kategoriid = "& Underkategori("id") &" And tilhoerendetil = 0 And accepteret = 0 Order By dato Desc") If Not (rs.BOF Or rs.EOF) Then rs.PageSize = 10 rs.AbsolutePage = intPage intRecCount = rs.PageSize intPageCount = rs.PageCount Do While Not rs.EOF And intRecCount > 0 %> <tr> <td><%= rs("titel") %></td> <td><%= rs("dato") %></td> <% Set Indlaeg = Connection.Execute("Select Count(id) As Antal From indlaeg Where tilhoerendetil = "& rs("id") &"") %> <td><%= Indlaeg("Antal") %></td> <% Set Indlaeg = Nothing %> </tr> <% intRecCount = intRecCount - 1 rs.MoveNext Loop End If rs.Close Set rs = Nothing %> </table> <table> <tr> <td><% If Clng(intPage) > 1 Then %>Tilbage<% Else %><%End If %></td> <td><% For intNum = 1 To intPageCount %><%= intNum %><% Next %>1 · 2 · 3</td> <td><% If Clng(intPage) < Clng(intPageCount) Then %>Frem<% Else %><%End If %></td> </tr> </table>
ADODB.Recordset (0x800A0CB3) Det aktuelle postsæt understøtter ikke bogmærker. Det kan skyldes en begrænsning af provideren eller af den valgte markørtype.
det er fordi mySQL har en simpler og MEGET bedre funktioner i sig...
<table> <% intPage = Request("page") If isNumeric(intPage) = False Or intPage < 1 Then intPage = 1 End If Set rs = Connection.Execute("Select * From indlaeg Where kategoriid = "& Underkategori("id") &" And tilhoerendetil = 0 And accepteret = 0 Order By dato Desc LIMIT 0,10;") ' den vælger de 10 første recorder If Not (rs.BOF Or rs.EOF) Then Do While Not rs.EOF %> <tr> <td><%= rs("titel") %></td> <td><%= rs("dato") %></td> <% Set Indlaeg = Connection.Execute("Select Count(id) As Antal From indlaeg Where tilhoerendetil = "& rs("id") &"") %> <td><%= Indlaeg("Antal") %></td> <% Set Indlaeg = Nothing %> </tr> <% rs.MoveNext Loop End If rs.Close Set rs = Nothing %> </table> <table> </table>
LIMIT [start],[antal] 10 næste sider = LIMIT 10, 10
så skal du selv lave beregninger med en SQL sætning for sig, for at lave det der automatisk halløj - det gidder jeg ikke lige at lave
<% Set objRs = Connection.Execute("SELECT COUNT(*) AS records FROM indlaeg Where kategoriid = "& Underkategori("id") &" And tilhoerendetil = 0 And accepteret = 0 Order By dato Desc") intRecords = int(objRs("records")) objRs.Close Set objRs = Nothing
intPage = Request.QueryString("page") if intPage = "" OR not isNumeric(intPage) then intPage = int(1) else intPage = int(intPage) end if intPageSize = int(5) intStart = intPage*intPageSize intStart = intStart-intPageSize intPages = int(intRecords/intPageSize)+1
intValue = (intRecords - intStart) If intPageSize > intValue Then intPageSize = intValue end if
Set objRs = Connection.Execute("SELECT * FROM indlaeg Where kategoriid = "& Underkategori("id") &" And tilhoerendetil = 0 And accepteret = 0 Order By dato Desc LIMIT " & intStart & ", " & intPageSize & ";")
if objRs.EOF or objRs.BOF then Response.Write "Ingen poster" else %> <% Do until objRs.EOF %> <tr> <td width="60%" bgcolor="#F0FAFA"><%= objRs("titel") %></td> <td width="30%" bgcolor="#F0FAFA" align="center"><%= objRs("dato") %></td> <% Set Indlaeg = Connection.Execute("Select Count(id) As Antal From indlaeg Where tilhoerendetil = "& objRs("id") &"") %> <td width="10%" bgcolor="#F0FAFA" align="center"><%= Indlaeg("Antal") %></td> <% Set Indlaeg = Nothing %> </tr> <% objRs.MoveNext Loop end if
objRs.Close Set objRs = Nothing %>
men du får 15 point for svaret...
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.