Manual:Pager.php/fr

La classe IndexPager fournit des fonctions utiles pour pour la pagination des résultats des champs d'une requête MySQL. La classe IndexPager est utilisée par exemple dans la page spéciale Spécial:Catégories.



Exemples d'utilisation
La première étape pour utiliser IndexPager dans votre extension de page spéciale est de créer une classe nommée par exemple  qui étend une de ces trois classes:


 * Utiliser  si vous voulez que vos résultats soient en ordre alphabétique
 * Utiliser  quand vous voulez que vos résultats soient dans un ordre chronologique inversé (le plus récent d'abord)
 * Utiliser  si vous voulez que vos résultats soient affichés dans des lignes d'un tableau

Chacune de ces trois classes (,  et  ) sont des extensions de la classe.

Normalement, vous ne devriez avoir à remplacer que quelques méthodes dans votre classe:


 * fournir la requête SQL que vous voulez exécuter au pager. Il devrait renvoyer un tableau associatif avec les éléments suivants:
 * tableau(x) utilisés dans la requête,
 * champ(s) à passer à Database::sélect, peut être * pour tous les champs dans le tableau,
 * un tableau contenant les conditions pour la clause WHERE (où),
 * an array containing other options (such as GROUP BY).
 * gets an argument,, which is a row object from the result fieldset. The function should return a string containing the item formatted as you need.
 * should return the name of the table field used for indexing and ordering results.

For example, if you want to list all pages in the NS0 using a pager, you should do something like that:

In your special page body than you have to:
 * create a new  class
 * use the  method for putting the navigation bar on the top and on the bottom of the page
 * use the  method for putting the list of the items.

For example:

