Imaginez qu'une table (dans votre base de données) contient des milliers d'enregistrements que vous voulez afficher. Si vous exécutez la requête SELECT et que vous récupérez tous les résultats alors vous ferez probablement face à l'un de ces problèmes (si ce n'était pas tous):
La requête SELECT mettra beaucoup de temps à s'executer vu le nombre important d'enregistrements à récupérer.
Si le TIMEOUT relatif à l'exécution d'une requête HTTP est excédé alors la connexion avec le serveur sera perdue et il faudra tout recommencer (bien que l'on peut définir un TIMEOUT différent dans le code PHP).
La mémoire du serveur sera trop surchargée au moment de l'exécution de la requête SELECT, ce qui peut dégrader les performances de celui-ci.
Au moment de l'affichage, le visiteur sera confronté à une masse colossale de données qu'il aura du mal à s'y trouver.
Il serait donc pratique de procéder à la récupération des données à la demande de l'utilisateur lot par lot.
La pagination avec le scrolling
De nos jours, on trouve de plus en plus sur les pages Web un système de pagination par scrolling (souvent infini). Quand vous défilez la page vers le bas, de nouvelles données apparaissent. C'est le cas sur les commentaires de vidéos sur Youtube, la recherche des images sur Google...). Bien que visuellement ce système est agréable, mais si le contenu que vous cherchez se trouve trop bas, vous serez obligé de défiler (scroller) la page durant un bon moment avant de l'atteindre. Donc certains utilisateurs trouvent que leur expérience face à ce problème se trouve altérée.
La pagination classique avec les numéros de page
Le système de pagination classique consiste à placer des boutons qui portent chacun un numéro d'une page. Chaque page contient un nombe limité d'enregistements, ainsi l'utilisateur peut aller directement à la page voulue sans être obligé de parcourir les autres.
Ce système aussi n'est pas parfait, car on peut se retrouver avec des centaines, voire des milliers de pages. Mais en général, on passera moins de temps à chercher l'information avec ce système qu'avec le système de scrolling.