18041 sujets
Questions générales et questions de débutants
j'ai trouvé un code de pagination intéressant, mais j'ai du mal à le modifier pour afficher 'Précédent' et 'Suivant'
Modifié par smartywou (30 Dec 2010 - 20:40)
if(num_page<3) // on est trop prêt du début on fais l'affichage depuis 1
{
for($i=1; $i<=9; $i++)
{
// on rajoute un test pour pouvoir faire le bold
if($i==$num_page)
{
echo '<a class="bold" href="?page='.$i.'">'.$i.'</a>';
}
else
{
echo '<a href="?page='.$i.'">'.$i.'</a>';
}
}
echo '<a href="?page='.$nb_pages.'">'.$nb_pages.'</a>'; // dernière page
}
$nb_pages=10; // on suppose que tu as 10 pages.
if(isset($_GET['page'])) // on regarde si on a reçu page ou pas en get
{
$num_page=intval($_GET['page']); // on stock le numéro de la page
if($num_page>$nb_pages) // si on a un numéro de la page plus grand que le maximum ( c'est louche .. mais bon , y a toujours des gens qui touche aux variables passés par get .. )
{
$num_page=1; // quelqu'un a du touché donc on remet a 1 .
}
}
else
{
$num_page=1; // on a pas eu page donc on est sur la 1ere page
}
include("./index".$num_page.".php"); // on charge la page qu'on a passé en get ( celle qu'on a en principe cliqué donc )
if ($nb_pages > 1 )
$prec = $num_page-1;
$prec = "<a href=\"t.php?page=$prec\"> Précédente</a>\n";
echo '<a href="?page=">'.$prec.'</a>';
if ($nb_pages > 1 )
$prec = $num_page+1;
$prec = "<a href=\"t.php?page=$prec\">Suivante </a>\n";
echo '<a href="?page=">'.$prec.'</a>';
Modifié par smartywou (30 Dec 2010 - 20:40)
Salut, (ca fait pas de mal)
if (test)
code;
if (test) {
code 1;
code 2;
}
le deuxieme if ($nb_pages > 1 ) ne sert à rien si c'est le même test.
Ensuite tu as un problème de nommage pour tes variable dans ton deuxième test. ($next ?)
if ($nb_pages > 1 )
$prec = $num_page-1;
$prec = "<a href=\"t.php?page=$prec\"> Précédente</a>\n";
echo '<a href="?page=">'.$prec.'</a>';
if ($nb_pages > 1 )
$prec = $num_page+1;
$prec = "<a href=\"t.php?page=$prec\">Suivante </a>\n";
echo '<a href="?page=">'.$prec.'</a>';
if (test)
code;
if (test) {
code 1;
code 2;
}
le deuxieme if ($nb_pages > 1 ) ne sert à rien si c'est le même test.
Ensuite tu as un problème de nommage pour tes variable dans ton deuxième test. ($next ?)
p'tits changements ...
ça marche toujours pas ... je suis dirigé vers index0 et je reste bloqué sur cette page, sinon j'ai fait d'autres essaie mais on m'indique qu'il y a des erreur ...
Modifié par smartywou (30 Dec 2010 - 23:22)
if ($nb_pages > 1 && $num_page > 1 ) // <==== Le 1er
$prec = $num_page-1;
$prec = "<a href=\"index.php?page=$prec\"> Page Précédente </a>\n";
echo '<a href="?page=">'.$prec.'</a>';
if ($nb_pages > 1 && $num_pag < 9 ) // <==== Le 2eme, On a 10 pages, dès qu'on arrive
// à la page 9 on retire le bouton 'précédent'
$suiv = $num_page+1; // <==== Le 3eme, j'ai remplacé $prec par $suiv
$suiv = "<a href=\"index.php?page=$suiv\"> Page Suivante </a>\n";
echo '<a href="?page=">'.$suiv.'</a>';
ça marche toujours pas ... je suis dirigé vers index0 et je reste bloqué sur cette page, sinon j'ai fait d'autres essaie mais on m'indique qu'il y a des erreur ...
Modifié par smartywou (30 Dec 2010 - 23:22)
for($i=1; $i<=$nb_pages; $i++)
{
if($i==$num_page)
{
echo '<a class="pagenav">'.$i.'';
}
else
{
echo '<a class="pagenav" href="?page='.$i.'">'.$i.'</a>';
}
}
$suiv = $num_page + 1;
$prec = $num_page - 1;
if ($nb_pages > 1 && $num_page > 1 )
{
if($num_page == 1 )
{
echo '<a class="pagenav">Précédente';
}
else
echo " <a class='pagenav' href=\"index.php?page=$prec\">Précédente</a>";
}
if ($nb_pages > 1 && $num_pag < $nb_pages )
{
if($num_page == $nb_pages - 1 )
{
echo '<a class="pagenav">Suivante';
}
else
echo " <a class='pagenav' href=\"index.php?page=$suiv\">Suivante</a>";
}
Modifié par Smithow (31 Dec 2010 - 10:10)