Avatar billede superole Nybegynder
29. januar 2001 - 17:06 Der er 2 kommentarer og
1 løsning

Opdeling på flere sider

Hvordan laver man, så hvis man i en asp fil, har mange links fra en database, så den selv opdeler det over flere sider, så der f.eks. er 20 links på hver side, og så kan man trykke videre til næste side.

Jeg vil geren have det sådan, så der i henholdsvises venstre og højre side står tilbage og næste, samt at der i nemmel der, vises f.eks. side  1 2 3 4 5 osv. alt efter hvor mange sider der nu er!

Øverst på siden må der gerne stå hvilken side der vises nu!
Avatar billede eagleeye Praktikant
29. januar 2001 - 19:07 #1
Du kan benytte PageSize
rs.Pagesize=20
maxpages=cint(rs.PageCount)
maxrecs=cint(rs.PageSize)

Det leteste er nok at prøve at kikke på dette eksempel:
http://www.activeserverpages.com/learn/dbtablepaged.asp
Avatar billede sbarnney Nybegynder
29. januar 2001 - 19:43 #2
<%
response.buffer = true
response.expires = -1
%>
<html><head>
    <TITLE></TITLE>
</head>
<body>
<!--#INCLUDE FILE=\"ADOVBS.INC\" -->
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Set RS = Server.CreateObject(\"ADODB.Recordset\")

Conn.Open \"DSN\", \"user\", \"password\"
sqltemp=\"SELECT * FROM tabel ORDER BY navn\"

mypage=request(\"whichpage\")
If  mypage=\"\" then
  mypage=1
end if
mypagesize=request(\"pagesize\")
If  mypagesize=\"\" then
  mypagesize=25 \'Antal Records som ses
end if
mySQL=request(\"SQLquery\")
IF  mySQL=\"\" THEN
  mySQL=SQLtemp
END IF

set rstemp=Server.CreateObject(\"ADODB.Recordset\")
rstemp.cursorlocation=aduseclient
rstemp.cachesize=5
rstemp.open mySQL,Conn
rstemp.movefirst
rstemp.pagesize=mypagesize
maxpages=cint(rstemp.pagecount)
maxrecs=cint(rstemp.pagesize)
rstemp.absolutepage=mypage
howmanyrecs=0
howmanyfields=rstemp.fields.count -1
\'response.write \"<table align=left border=\'0\'><tr><td align=left width=\'200\'>\"
\'response.write \"Side \" & mypage & \" af \" & maxpages & \"</td></tr></table>\"
%>
<table>
    <tr>
        <td>NAVN</td>
    </tr>
<%
\' Now loop through the data
DO  UNTIL rstemp.eof OR howmanyrecs>=maxrecs

      \'Lav farveskift for hver række
      if Color=\"#8e9dbc\" then
          Color=\"#ffefd0\"
      else
          Color=\"#8e9dbc\"
      end if
%>
  <tr>
        <td bgcolor=\"<%= Color %>\"><%=UCase(rstemp(\"navn\"))%></td>
    </tr>
<%
    rstemp.movenext
    howmanyrecs=howmanyrecs+1
LOOP
response.write \"</table><p>\"

response.write \"<table align=left border=\'0\'><tr><td align=left width=\'200\'>\"
response.write \"Side \" & mypage & \" af \" & maxpages & \"</td></tr></table>\"


\' close, destroy
rstemp.close
set rstemp=nothing

\' Now make the page _ of _ hyperlinks
Call PageNavBar

sub PageNavBar()
  \' Thanks to Jeff Emrich <jeff.emrich@datafuse.com>
      pad=\"\"
      scriptname=request.servervariables(\"script_name\")
      response.write \"<table rows=\'1\' cols=\'1\' width=\'97%\'><tr>\"
      response.write \"<td>\"
      response.write \"<font size=\'2\' color=\'black\' face=\'Verdana, Arial,Helvetica, sans-serif\'>\"
      if (mypage mod 10) = 0 then
      counterstart = mypage - 9
      else
      counterstart = mypage - (mypage mod 10) + 1
      end if
      counterend = counterstart + 9
      if counterend > maxpages then counterend = maxpages
      if counterstart <> 1 then
      ref=\"<a href=\'\" & scriptname
      ref=ref & \"?whichpage=\" & 1
      ref=ref & \"&pagesize=\" & mypagesize
      ref=ref & \"&sqlQuery=\" & server.URLencode(mySQL)
      ref=ref & \"\'>Første</a>&nbsp;:&nbsp;\"
      Response.Write ref


      ref=\"<a href=\'\" & scriptname
      ref=ref & \"?whichpage=\" & (counterstart - 1)
      ref=ref & \"&pagesize=\" & mypagesize
      ref=ref & \"&sqlQuery=\" & server.URLencode(mySQL)
      ref=ref & \"\'>Forrige</a>&nbsp;\"
      Response.Write ref
      end if
      Response.Write \"[\"
      for counter=counterstart to counterend
      If counter>=10 then
      pad=\"\"
      end if
      if cstr(counter) <> mypage then
      ref=\"<a href=\'\" & scriptname
      ref=ref & \"?whichpage=\" & counter
      ref=ref & \"&pagesize=\" & mypagesize
      ref=ref & \"&sqlQuery=\" & server.URLencode(mySQL)
      ref=ref & \"\'>\" & pad & counter & \"</a>\"
      else
      ref=\"<b>\" & pad & counter & \"</b>\"
      end if
      response.write ref
      if counter <> counterend then response.write \" \"
      next
      Response.Write \"]\"
      if counterend <> maxpages then
      ref=\"&nbsp;<a href=\'\" & scriptname
      ref=ref & \"?whichpage=\" & (counterend + 1)
      ref=ref & \"&pagesize=\" & mypagesize
      ref=ref & \"&sqlQuery=\" & server.URLencode(mySQL)
      ref=ref & \"\'>Næste</a>\"
      Response.Write ref


      ref=\"&nbsp;:&nbsp;<a href=\'\" & scriptname
      ref=ref & \"?whichpage=\" & maxpages
      ref=ref & \"&pagesize=\" & mypagesize
      ref=ref & \"&sqlQuery=\" & server.URLencode(mySQL)
      ref=ref & \"\'>Sidste</a>\"
      Response.Write ref
      end if
      response.write \"<br></font>\"
      response.write \"</td>\"
      response.write \"</table>\"
end sub
%>
</body>
</html>

Husk adovbs.inc. Hvis du ikke har den kan jeg lægge den ud også.

Stig
Avatar billede maxikoll Nybegynder
30. januar 2001 - 13:31 #3
Hvor finder man den adovbs.inc henne? Det script er da lidt stort? Er det nødvendigt?
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester