Bonjour,
Je cherche un moyen pour mettre le bouton 'suivant' et 'précédent' dans le code de pagination en dessous, ça a l'air très simple, mais comme je ne maîtrise pas les base du php, tout devient plus compliqué...
Modifié par smartywou (30 Dec 2010 - 20:40)
j'ai trouvé un code de pagination intéressant, mais j'ai du mal à le modifier pour afficher 'Précédent' et 'Suivant'




  
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 ($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 ...


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 ... Smiley decu
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)