Astuces pratiques de développement web

Auteur: Mohamed CHINY Durée necessaire pour le cours de Astuces pratiques de développement web Niveau recommandé pour le cours de Astuces pratiques de développement web Supports vidéo disponibles pour ce cours Exercices de renforcement disponibles pour ce cours Quiz non disponibles pour ce cours

Page 4: Système de pagination en PHP

Toutes les pages

Créer un système de pagination à l'aide du PHP

Pourquoi la pagination?

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.

Passons à la pratique