22. februar 2008 - 15:06Der er
13 kommentarer og 1 løsning
hent 12 poster lav forrige/næste knap
Hey derude Jeg tror jeg ikke kan se skoven for bare træer...
Det er sikkert helt lige til, men hvordan laver jeg en funktion på min asp-side der gør at når jeg henter fra databasen hentes 12 poster hvorefter der oprettes en forrige / næste knapper til de næste 12 poster
selvføllige skal man ikke kunne trykke forrige på første side og det samme med næste på sidste side...
jeg har selv lavet noget med nogle if-sætninger* og det virker også fint på den side hvor der vises info om folk, men på en side der skal fungere som brugtsalg hvor der ændres i data i databasen ville det været rart med et 'selvtænkende' forrige/næste side system
her har jeg mit db'kald og mine if sætninger som må ku laves på et smartere måde: <% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../fpdb/databasen.mdb") if request.querystring("vis") < 1 then Set rs=Conn.Execute("select * from [medarbejder] where id <= 12 order by id asc") strprev = "<font color='#999999'>forrige</font>" strnext = "<a href='?la="&request.querystring("la")&"&vis="&(request.querystring("vis")+1)&"'>næste</a>" end if if request.querystring("vis") = 1 then Set rs=Conn.Execute("select * from [medarbejder] where 13 <= id and id <= 24 order by id asc") strprev = "<a href='?la="&request.querystring("la")&"&vis="&(request.querystring("vis")-1)&"'>forrige</a>" strnext = "<a href='?la="&request.querystring("la")&"&vis="&(request.querystring("vis")+1)&"'>næste</a>" end if if request.querystring("vis") > 1 then Set rs=Conn.Execute("select * from [medarbejder] where 25 <= id and id <= 36 order by id asc") strprev = "<a href='?la="&request.querystring("la")&"&vis="&(request.querystring("vis")-1)&"'>forrige</a>" strnext = "<font color='#999999'>næste</font>" end if %>
Et nyt nationalt initiativ fra Industriens Fond, EIFO og Innovationsfonden – eksekveret af DTU Science Park og Teknologisk Institut– skal bygge bro mellem startups, SMV’er og Forsvaret.
alletiders artikkel og særdeles brugbar.. får ingen af de fejl folk poster i kommentaren... nu har jeg omskrivet lidt så det til passer til mit brug (måske derfor der er bøvl med det) men jeg har et lille problem...
jeg skal kun have vist 12 poster pr. side her vises alle MEN efter at have hivet 4 (fire) poser ud af db'en springes en over, så hives 4 mere ud og en spriges over osv osv..
Hvordan opfører siden sig i øvrigt, hvis der ikke er 12 poster at vise? Du tvinger jo siden til at gå 4 poster frem, pr. gennemgang af dit loop. Hvad nu hvis den er nået til slutningen af databasen, og kun kan gå 2 poster frem?
^^^^ mht til det med posterne findes der fuktioner eller skal jeg skrive en anden kode for at den stopper efter slutning hvis du ikke der er antal poster som 4 går op i
hmm tror måske jeg selv kan se horofr, men har ingen ide om hvordan man koder sig ud af det..
i org, script hentes date fra db'en således: strSQL = "SELECT LinkURL FROM Links" jeg henter jo ikke fra et specifikt felt men bare alt (*)fra db'en dvs. når siden hentes igen efter at have skiftet side hentes det vel bare fra post et i dben igen?
Der bliver 3 sider i alt med 12 på hver (36 poster) på side 1 vises alle poster (36) på side 2 vises 24 poster og på side 3 vises 12 poster...
Her er lidt hurtigt pseudokode. Er ikke testet, men det burde tage højde for at antal posts ikke passer, og til sidst generere resten af dit tabeldesign, så det passer med strukturen. Håber det er til at forstå, da jeg desværre bliver nødt til at smutte for i dag.
itemsPerRow = 4 itemRowCount = 1
Do While Not rs.EOF And intRecCount > 0
If itemRowCount = 1 Then ' Skriv <tr> ElseIf itemRowCount = itemsPerRow Then ' Skriv </tr> End If
hmm har rodet lidt med det og får bare en hel blank side... :(
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.