Le systeme de pagination
Modèle : galery.php
importation de la classe :
Ici a la ligne 304 on importe et initialise l'objet :
Code PHP :
//On crée une pagination si le nombre de catégories est trop important. import('util/pagination'); $Pagination = new Pagination();
Dans le passeage au template on affiche le resultat de la fonction display de la classe pagination
ici a la ligne 342 :
Code PHP :
'PAGINATION' => $Pagination->display('gallery' . url('.php?p=%d&cat=' . $g_idcat . '&id=' . $g_idpics . '&' . $g_sort, '-' . $g_idcat . '-' . $g_idpics . '-%d.php?&' . $g_sort), $total_cat, 'p', $CONFIG_GALLERY['nbr_pics_max'], 3),
Les information nécessaire a cette fonction sont :
display($path,$total_msg,$var_page,$nbr_msg_page,$nbr_max_link,$font_size=11,$previous_next=true,$link_start_page=true)
$path ==> URL complète de la page.
$total_msg ==> nombre total resultat d'un comptage sql.
$var_page ==> name de $_GET (en général 'p').
$nbr_msg_page ==> nombre de message a afficher par page.
$nbr_max_link ==> nombre de lien maximum afficher dans la ligne de pagination.
$font_size (optionel par défaut =11) ==> [0-9]
$previous_next (optionel par défaut = true) ==> true false
$link_start_page (optionel par défaut = true) ==> true/false
Dans la lecture de la base de donée, la limitation se positionne a la fin.
On fait appel a la fonction get_first_msg().
Ici a la ligne 409 :
Code PHP :
" . $Sql->limit($Pagination->get_first_msg($CONFIG_GALLERY['nbr_pics_max'], 'p'), $CONFIG_GALLERY['nbr_pics_max']), __LINE__, __FILE__);
Les informations pour cette fonction sont :
get_first_msg($nbr_msg_page,$var_page)
$nbr_msg_page ==> nombre de message a afficher par page.
$var_page ==> name de $_GET (en général 'p').
Dans les lignes suivantes on recommence l'opération pour des conditions autre que la pagination.
La récupération de la page a consulté est récupérer par la fonction display.
Une fois ces élément en place la pagination est fonctionnelle.
il n'y a pas d'autre élément a traiter en php.
il faut placer la balise tpl {PAGINATION} et les liens apparaitrons.