Creer un système de pagination en php

bonjour à tous.
j'ai un problème avec ma pagination,
je ne trouve aucun tuto sur le net qui explique de façon clair comment faire une vraie pagination.je veut dire une pagination qui fait 1 2 3....4 5 c'est à dire une pagination avec troncature et non une pagination du type 1 2 3 4 5 ...qui va jusqu'à 100 pages si on a 100 pages.
voici mon code actuel qui ne me satisfait pas.
aidez moi svp.

<?php

$v6 = $bdd->query('SELECT COUNT(*) as total FROM articles') or die(print_r($bdd->erroInfo()));
$nombre = $v6->fetch(PDO::FETCH_ASSOC);
$total = $nombre['total'];
$articleParPage = 3;

$nombreDePages = ceil($total/$articleParPage);

if(isset($_GET['page']) AND !empty($_GET['page']))
{
$pageActuelle = intval($_GET['page']);

if($pageActuelle>$nombreDePages)
{
$pageActuelle = $nombreDePages;
}
}
else
{
$pageActuelle = 1;
}

$premièreEntrée = ($pageActuelle-1)*$articleParPage;

if($pageActuelle!=1)
{
$precedent=$pageActuelle-1;
echo' <a id="pagprecedent" href="index_blog.php?page='.$precedent.'">precedent</a>';

}
for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle
{

echo' <a id="pagination" href="index_blog.php?page='.$i.'">'.$i.'</a>';
}

if($pageActuelle<$nombreDePages)
{
$suivant= $pageActuelle+1;
echo' <a id="pagsuivant" href="index_blog.php?page='.$suivant.'">suivant</a>';
}

?>

--
zakou

1 réponse

  1. Modérateur
    Regardes la clause LIMIT de MySql.
    1. merci pour la reponse mais le problème est que je veux faire une pagination avec troncature
    2. Modérateur
      LIMIT te permet de ne prendre les enregistrements que les X entrées de la Yième, ensuite la pagination c'est juste une multiplication du numéro de la page par le nombre d'entrée par page.