#208 - Utilizzare la paginazione come i motori di ricerca
I motori di ricerca adottano una tecnica, chiamata paginazione, che permette di dividere i risultati di una ricerca su più pagine.
In realtà i cambiamenti da apportare ad un motore di ricerca che non preveda questa funzione non sono poi molti e lo script che segue è un ottimo punto di partenza.
<%
RecordsPerPagina = 5
page = Request("page")
if page="" then page=1
' STRINGA SQL
strRicerca = Request("ricerca")
SQL = "SELECT * FROM Ricerca WHERE Descrizione LIKE '%" & strRicerca & "%'"
'apri recordset con valore 1,3
' es rs.open sql, conn, 1, 3
' paginazione
rs.PageSize = RecordsPerPagina
rs.AbsolutePage = page
If rs.Eof=True or rs.Bof=True then
Response.Write "<P>Nessun risultato trovato</P>"
Else
For i=1 to RecordsPerPagina
if Not rs.EOF then
'mostra record
rs.MoveNext
end if
Next
End if
%>Infine, per aggiungere una barra di navigazione tra le pagine con risultati:
<%
Response.Write "<P><B>Pagine:</B> "
For pag=1 to rs.PageCount
Response.Write "<A href='pagina.asp?page=" & pag
Response.Write "&ricerca=" & Server.UrlEncode(strRicerca)
Response.write "'>"
Response.Write pag
Response.Write "</A> "
Next
Response.Write "</P>"
%>Per maggiori informazioni sull'accesso dai database si veda
http://www.aspitalia.com/articoli/db/
Approfondimenti
Commenti
Esprimi il tuo giudizio su questo script:
Per procedere devi essere autenticato.
maxb scrive:
#208 - Utilizzare la paginazione come i motori di ricerca
Aggiungerei anche il metodo di paginazione supportato da Mysql. Infatti il motore di mysql non supporta il cursore 3 come Access o Sql server ma solo ...
Aggiungerei anche il metodo di paginazione supportato da Mysql. Infatti il motore di mysql non supporta il cursore 3 come Access o Sql server ma solo ...
p178899 scrive:
Utilizzare la paginazione come i motori di ricerca
Mi pare che ci sia un piccolo errore nello script:le righe di codice rs.PageSize = RecordsPerPagina rs.AbsolutePage = page vanno all'interno del loop ...
Mi pare che ci sia un piccolo errore nello script:le righe di codice rs.PageSize = RecordsPerPagina rs.AbsolutePage = page vanno all'interno del loop ...
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.








Stampa
Download 




Ciao ho un problema.Ho modificato il codice , senza cambiare nulla di importante (o almeno credo) e funziona parzialmente.Se richiamo la pagina ...
Continua »»» | Rispondi »»»