Scopiazzando qua e la' per la rete, ho sritto questo codice per la paginazione dei record:
Codice PHP:<%
pagina = Cint(request.querystring("pag"))
If pagina <= 0 Or Request.QueryString("pag") = "" Then
pagina = 1
End If
db_path = " ecc... ecc...
' Apro la connessione al database
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open db_path
SqlCount = "SELECT COUNT(*) AS totale FROM NomeTabella"
Set RsCount = Conn.Execute(SqlCount)
' Numero di records per pagina
PageSize = 5
inizio = (pagina-1)*PageSize ' è il primo record di ogni pagina
totali = Cint(RsCount("totale")) ' Numero di records totali ottenuti
' Numero di pagine in cui saranno divisi i records
NumPagine = totali/PageSize
' Se NumPagine è un numero decimale, ad es. 10,2 allora
' ho bisogno di una pagina in più per mostrare tutti i record
If NumPagine-Cint(NumPagine) > 0 Then
NumPagine = Cint(NumPagine+1)
Else
NumPagine = Cint(NumPagine)
End If
' Chiudo e distruggo l' oggetto RsCount ora che ho ottenuto le variabili
' PageSize : numero di records per pagina
' inizio : il primo record da mostrare alla pagina i-esima
' NumPagine : il numero totale di pagine in cui saranno distribuiti i records
RsCount.Close
Set RsCount = Nothing
' Eseguo la query
Sql = "SELECT * FROM NomeTabella LIMIT " & inizio & ", " & PageSize
Set Rs = Conn.Execute(Sql)
If totali > 0 Then
For i=1 to PageSize
If Rs.EOF <> true And Rs.Bof <> true Then
campo1 = Rs("campo1")
campo2 = Rs("campo2")
ecc... ecc...
%>
Campo1: <%=campo1%>
Campo2: <%=campo2%>
ecc... ecc..
<%
Rs.MoveNext
End If
Next
Else
%>
<font color="#FF0000">[b]NON CI SONO RECORDS[/b]</font>
<%
End If
%>
' Chiudo la connessione ..
Il tutto è basato su una serie di operazioni matematiche.
Quello che fa questo script è quello di suddividere in pagine tutti i record, dal primo all' ultimo
Ma se voglio fare inversamente è cioè elencare i record dall' ultimo al primo in modo che quelli più recenti compaiano per primi come faccio ????????

Rispondi quotando
