18-08-2013, 08:41 PM
Variante (tout dépend si la pagination sert à limiter l'affiché ou à limiter la quantité de données transférer):
► Ne pas limiter la requête SQL
► Envoyer toutes les données dans la page, formatée dans un tableau par exemple, ou dans une suite de tableaux
► Masquer les tableaux qu'on ne veut pas afficher (via CSS, display=none par exemple).
Mais c'est une limitation d'affichage, pas de transfert. Donc, dans le cas du "1000 commentaires", cela me semble inadapté, mais dans le cas, par exemple de 100 titres d'articles, c'est envisageable.
On peut croiser les deux: Envoyer 100 titres d'articles, pas plus (limite SQL), et n'afficher que les 10 premiers.
Cela permet de donner un aspect hyper-réactif aux pages: quand on demande les 10 titres suivants, comme on ne fait pas de requête (type AJAX), l'affichage est immédiat. Mais cela n'apporte rien en terme d'optimisation dans le transfert des données ou dans le poids de la page! Cela allège juste la vue de l'utilisateur.
► Ne pas limiter la requête SQL
► Envoyer toutes les données dans la page, formatée dans un tableau par exemple, ou dans une suite de tableaux
► Masquer les tableaux qu'on ne veut pas afficher (via CSS, display=none par exemple).
Mais c'est une limitation d'affichage, pas de transfert. Donc, dans le cas du "1000 commentaires", cela me semble inadapté, mais dans le cas, par exemple de 100 titres d'articles, c'est envisageable.
On peut croiser les deux: Envoyer 100 titres d'articles, pas plus (limite SQL), et n'afficher que les 10 premiers.
Cela permet de donner un aspect hyper-réactif aux pages: quand on demande les 10 titres suivants, comme on ne fait pas de requête (type AJAX), l'affichage est immédiat. Mais cela n'apporte rien en terme d'optimisation dans le transfert des données ou dans le poids de la page! Cela allège juste la vue de l'utilisateur.