Paginazione

Come sappiamo, una Vista viene definita sulla base di un filtro (per esempio: mostra solo i prodotti dal costo unitario sopra i 5 euro, oppure mostra solo le voci del blog più recenti di un mese) e di un numero di risultati da mostrare. Le cose non cambiano nel caso delle Viste navigabili. Semplicemente, il secondo numero rappresenta il numero di risultati per ogni sottopagina.

Nel caso delle Viste realizzate in modalità "per esperti", appare un box compilabile con l'aspetto che mostriamo nella figura sottostante.

Nel caso di una Vista avanzata usata in modo paginabile con il costrutto NAVIGATE, dunque, abbiamo che alla prima esecuzione la Vista viene eseguita esattamente come l'avete digitata. Quando il visitatore naviga, per esempio cliccando il link sar-at-qnext per andare alla sottopagina successiva, Sar-At esegue normalmente la testa della vostra query e vi concatena una cosa che genera lui stesso. Facciamo un esempio osservando la immagine sottostante.

Al primo giro, la query SQL eseguita sarà esattamente quella digitata:

  SELECT *, YEAR(date) AS anno FROM inlinea WHERE visible='Y' ORDER BY date DESC LIMIT 3

Quando il visitatore clicca un link sar-at-qnext per andare alla sottopagina successiva, Sar-At esamina la configurazione del box "Navigazione". Trova l'indicazione di navigare per date discendenti e genera dunque la clausola ORDER BY date DESC LIMIT 3,3. Produce la query finale concatenando la testa così come l'ha trovata con la coda generata. Abbiamo dunque:

  SELECT *, YEAR(date) AS anno FROM inlinea WHERE visible='Y' ORDER BY date DESC LIMIT 3,3