Bonjour
Pouvez vous préciser les fonctions de votre "pagination" ?
Comme ce terme désigne notament une ancienne technique de gestion de la mémoire ça me rend un peu perplexe :-)
mit0910
non non rien avoir avec le OS ,
c'est quand vous avez bcp de donneés à affichier mais la page sur laquelle vous vaullez l'affiche ne supporter pas tous ca exemple:les livre d'or,...
Si c'est pour installer un livre d'or béton et sécure il vaut mieux rechercher des scripts sur
http://www.phpscripts-fr.net/
Sinon voici un morceau de code qui ressemble à ça mais sans garantie (ce n'est ni lisible, ni propre, ni bien commenté, de plus j'utilise les globales $_POST comme variables ce qui n'est pas indiqué
c'est donc juste pour étudier le principe, pour dépanner quoi :-)
Code à mettre dans la page de présentation de la pagination :
<?php
include "list-struct.php";
// ------------------- pour info ----------------------
// Pagination par N de pages
// $count -> nb de documents total
// $nb_titles_par_page -> nb de de doc par pages
// \$nb_pages_par_seg -> nombre de numéros de page à présenter
// \$vars -> variables recuperees par $_POST / $_GET
// Important: la variable \$vars['CUR_PAGE'] contiendra le numéro de la page courante.
// ------------------- fin pour info ----------------------
print list_struct ( $count, $nb_titles_par_page, $nb_pages_par_seg, $vars)."\n" ;
print "imprimer la ou les pages courante...";
?>
Trouvez des réponses à vos questions sur les langages, les frameworks et les astuces de codage. Échangez avec d'autres développeurs passionnés pour améliorer vos compétences en programmation et rester au fait des dernières tendances du secteur.
c'est quand vous avez bcp de donneés à affichier mais la page sur laquelle vous vaullez l'affiche ne supporter pas tous ca exemple:les livre d'or,...
http://www.phpscripts-fr.net/
Sinon voici un morceau de code qui ressemble à ça mais sans garantie (ce n'est ni lisible, ni propre, ni bien commenté, de plus j'utilise les globales $_POST comme variables ce qui n'est pas indiqué
c'est donc juste pour étudier le principe, pour dépanner quoi :-)
Code à mettre dans la page de présentation de la pagination :
Dans list-struct.php :
<?php function list_struct ( $nb_titles_total, $nb_titles_par_page, $nb_pages_par_seg, $vars) { $buf = ""; $reqbody = ""; if (!isset( $vars['CUR_PAGE'] )) { $cur_page = 0; } else { $cur_page = $vars['CUR_PAGE']; } foreach($vars as $key=>$val) { if ($key == "CUR_PAGE") continue; if ($reqbody !== "") $reqbody.= "&"; $reqbody.= $key."=".urlencode($val); } $nb_pages_total = ceil($nb_titles_total / $nb_titles_par_page); $nb_segs_total = ceil($nb_pages_total / $nb_pages_par_seg); $cur_seg = floor($cur_page / $nb_pages_par_seg ); $is_prev_seg = ($cur_seg > 0) ? 1 : 0; $is_next_seg = ($cur_seg + 1 < $nb_segs_total) ? 1 : 0; $offset_deb_page = $cur_seg * $nb_pages_par_seg; $offset_fin_page = min (($offset_deb_page + $nb_pages_par_seg), $nb_pages_total); if ($nb_segs_total < 1) { return ""; } $buf .= "<br /><div style='font-weight: lighter; text-align: center; width: 100%;'>\n"; if ($is_prev_seg) { $buf .= "<a href='?".$reqbody."&CUR_PAGE=".($cur_page-$nb_pages_par_seg)."'> << </a>\n"; } for ($i = $offset_deb_page; $i < $offset_fin_page ; $i ++) { $buf .= (($i == $cur_page) ? " ".$i ." " : "<a href='?".$reqbody."&CUR_PAGE=".$i."'> $i </a>\n"); } if ($is_next_seg) { $buf .= "<a href='?".$reqbody."&CUR_PAGE=".$offset_fin_page."'> >> </a>\n"; } $buf .= "<br /></div>\n"; return $buf; } ?>