ASP: la Paginazione

Anche in ASP è possibile applicare la paginazione dei record sia per evitare tempi di caricamento elevati e sia perchè una pagina con troppi record sarebbe troppo lunga.

Per paginazione intendiamo una divisione dei record prodotti da una stessa query ma distribuiti in più pagine, dove in realtà la pagina è sempre la stessa, cambiano solo i risultati in funzione della scelta del numero di pagina sfogliato.

asp - ASP: la Paginazione

Vediamo in sintesi la nostra pagina Asp:

<% Dim DBConn,strconn
set dbconn=server.createobject("ADODB.connection")
strconn="Provider = Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath ("data/utenti.mdb")
dbconn.open strconn

Dim objRS

Set objRS = Server.CreateObject("ADODB.Recordset")

RecordsPerPagina = 5  'NUMERO DI RECORD DA VISUALIZZARE PER OGNI PAGINA

page = Request("page")

if page="" then page=1

strSQL = "SELECT * FROM sorgenti order by nomesorgente;"

objRS.open strSQL, DBConn, 1

objRS.PageSize = RecordsPerPagina

objRS.AbsolutePage = page

If objRS.Eof=True or objRS.Bof=True then

Response.Write "<P>Nessun risultato trovato</P>"

Else

Response.Write ("<center><table border=1><tr><th bgcolor=lightyellow>Nome</th><th bgcolor=lightyellow>Linguaggio</th><th bgcolor=lightyellow>Autore</th></tr>")

For i=1 to RecordsPerPagina

if Not objRS.EOF then

Response.Write("<tr><td>" & objRS("nomesorgente") & "</td>")

Response.Write("<td>" & objRS("linguaggio") & "</td>")

Response.Write("<td>" & objRS("nickname") & "</td></tr>")

objRS.MoveNext

end if

Next

Response.Write ("</table></center>")

End if

Response.Write "<P><B>Pagine:</B> "

For pag=1 to objRS.PageCount

Response.Write "<A href='default.asp?page=" & pag & "'>"

Response.Write pag

Response.Write "</A> "

Next

Response.Write "</P>"

objRS.Close

Set objRS=Nothing

DBConn.Close

Set DBConn=Nothing

%>

Fatemi sapere se vi funziona.

Ciao


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *