webForumDet fria alternativet

paging

ASPur ASP

5 svar · 211 visningar · startad av Percy

Medlem sedan mars 2000187 inlägg
Frågan#1

Hej!
vet att denna fråga har ställts förr men kan inte hitta den. Jag undrar hur man gör för att få så att det står 1, 2, 3 osv. och inte 01, 02, 03 osv. i den exempelkod för hur man delar upp ett rs på flera sidor som finns i FAQ:en! Undrar dessutom hur man gör för att få en textlänk där det står Nästa och föregående!
Tack på förhand!

Medlem sedan juni 200032 969 inlägg
#2

visa oss koden för de aktuella avsnitten så ska du få massor med hjälp! :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan mars 2000187 inlägg
#3

här är den:

<%
mypage = Request("whichpage")
If mypage = "" Then
	mypage = 1
End If
mypagesize = 10

sql = "Select * From links Order by namn"

Set rstemp = Server.CreateObject("ADODB.Recordset")
rstemp.CursorLocation = 3
rstemp.CacheSize = 5
rstemp.Open sql, "driver={Microsoft Access Driver (*.mdb)};dbq=c:\databas.mdb"
If rstemp.EOF Then
	Response.Write "Där fanns det ju inget..." & sok
Else
	rstemp.MoveFirst
	rstemp.PageSize = mypagesize
	maxcount = Cint(rstemp.PageCount)
	rstemp.AbsolutePage = mypage
	howmanyrecs = 0
	howmanyfields = rstemp.Fields.Count -1
	Do While Not RSTemp.EOF AND howmanyrecs < rstemp.PageSize
	Counter = Counter + 1
	If Counter mod 2 = 0 Then
	color = "FFFFFF"
	Else
	color = "EEEEEE"
	End If
	%>
	<tr bgcolor="<%=color%>"><td><a href="<%=RStemp("url")%>"><%=RStemp("namn")%></a></td></tr>
	<%
	rstemp.MoveNext
	howmanyrecs = howmanyrecs + 1
	Loop
	rstemp.Close
	Set rstemp = nothing
	%>
	<tr><td><hr></td></tr>
	<tr><td>
	<%
	If maxcount <> 0 Then
	Response.Write "sida " & mypage & " av " & maxcount & "<br>" & sidor:
	pad = "0"
	scriptname = Request.ServerVariables("script_name")
	For counter = 1 to maxcount
	If counter >= 10 Then
		pad = ""
	End If
	ref = "<a href=""" & scriptname & "?whichpage=" & counter & "&pagesize=" & mypagesize & """>" & pad & counter & "</a> "
	Response.Write ref & " "
	If counter mod 10 = 0 Then
		Response.Write "<br>"
	End If
	Next
	End If
End If
%>
Medlem sedan juni 200032 969 inlägg
#4
  1. ta bort raden pad = "0" för att slippa nollan framför sidnumret. ta gärna bort allt som har med pad att göra.

  2. du kan ha nånting sånt härnt underst:

if mypage > 1 then response.write "<a href=""" & scriptname & "?whichpage=" & mypage-1 & "&pagesize=" & mypagesize & """>Förra</a> "
if mypage<maxcount then response.write "<a href=""" & scriptname & "?whichpage=" & mypage+1 & "&pagesize=" & mypagesize & """>Nästa</a> "

obs, otestat.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan mars 2000187 inlägg
#5

Hej igen!
Det fungerade delvis, "föregående" länken fungerar medans "nästa" inte gör det!
Undrar även hur det skulle se ut i min kod om jag vill att man via en drop-down skulle kunna välja hur många poster man vill visa per sida och inte endast ha ett statiskt värde(i detta fallet 10)? Det som jag inte får att fungera är att den klagar på "type mismatch" och jag körde då en vartype() på rstemp.PageSize och fick som svar att den var en sträng (8), provade då att tvinga Request.Formen från menyn att bli en sträng men den gnäller fortfarande, nån vänlig som kan hjälpa mig?

Medlem sedan juni 200032 969 inlägg
#6

får du något felmeddelande på nästa-länken?

få se på koden som skapar type mismatch-felet, och markera vilken rad felet sägs vara på.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

134 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)