Creer un système de pagination en php
zakou3
Messages postés
15
Statut
Membre
-
NHenry Messages postés 15479 Statut Modérateur -
NHenry Messages postés 15479 Statut Modérateur -
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>';
}
?>
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>';
}
?>
A voir également:
- Creer un système de pagination en php
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Restauration systeme windows 10 - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte gmail - Guide
1 réponse
zakou3
Messages postés
15
Statut
Membre
merci pour la reponse mais le problème est que je veux faire une pagination avec troncature
NHenry
Messages postés
15479
Statut
Modérateur
366
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.