Bé contento tu:
codice:
<%@LANGUAGE = VBScript%>
<%
' DEFINISCO LE VARIABILI CHE MI SERVONO PER L'APPLICAZIONE
Dim cn, rs, quanti, pag, contatore
' Creo un'istanza per la connessione ed una per il Recordset
Set cn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
' APRO LA CONNESSIONE COL DATABASE
cn.Open str_cn
' DEFINISCO IL NUMERO DI RECORD DA VISUALIZZARE PER OGNI PAGINA
RecordsXPagina = 6
' RECUPERO IL NUMERO DI PAGINA CORRENTE
' E CONTROLLO CHE NON SIA INFERIORE A 1
If Request.QueryString("pagina") = "" Then
pagina = 1
Else
pagina = CInt(Request.QueryString("pagina"))
End If
' IMPOSTO UN CONTATORE
contatore = 0
%>
<html>
<head>
<title>Paginazione dei risultati di query molto lunghe in ASP</title>
<style>a { color: blue; }</style>
</head>
<body>
<table align="center" width="300" border="1">
<%
Dim SQL ' Creo la query SQL
SQL = "SELECT * FROM dati"
' EFFETTUO MATERIALMENTE LA PAGINAZIONE
rs.Open sql, cn, 3,3
if not RS.eof then
RS.PageSize = RecordsXPagina
RS.AbsolutePage = pagina
For i = 1 to RecordsXPagina
if not RS.eof then
%>
<tr><td><%=rs("nome")%></td></tr>
<%
RS.movenext
' INCREMENTO IL VALORE DEL CONTATORE
contatore = contatore + 1
end if
next
Response.Write "
Numero Pagine: "
For pagina = 1 to RS.PageCount
Response.Write "<A href='"&istring&"?pagina=" & pagina
Response.write "'>"
Response.write "<font size=1 color=#000080>"
Response.Write pagina
Response.Write "</A> "
Next
Response.Write ">>
</td></tr>"
rs.Close
Set rs = Nothing
Cn.Close
Set Cn = Nothing
end if
%>
</table>