Rebonjour,
J'essaie de faire une pagination en m'inspirant d'un tuto.
Dans mon exemple j'ai 3 enregistrements et je veux pour l'instant afficher 2 enregistrements par page j'ai donc 2 pages
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 <?php //nombre de ligne par page $lignesParPage = 2; $retour_total = mysql_query('SELECT COUNT(*) AS total FROM membres'); //On range retour sous la forme d'un tableau. $donnees_total=mysql_fetch_assoc($retour_total); //On récupère le total pour le placer dans la variable $total. $total_pages = $donnees_total['total']; //comptage du nombre de pages. $nombreDePages=ceil($total_pages/$lignesParPage); // Si la variable $_GET['page'] existe... if (isset($_GET['page'])) { $pageActuelle = intval($_GET['page']); if ($pageActuelle > $nombreDePages) { // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages... $pageActuelle = $nombreDePages; } } else { $pageActuelle = 1; // La page actuelle est la n°1 } // On calcul la première entrée à lire $premiereEntree = ($pageActuelle ) * $lignesParPage; $sql = mysql_query('SELECT membres.*, locataire.* FROM membres,locataire WHERE locataire.id_membre = membres.id_membre ORDER by membres.id_membre LIMIT '.$premiereEntree.', '.$lignesParPage.''); $nblgn = mysql_num_rows($sql); for ($i = 0; $i < $nblgn; $i++) { $id_membre = mysql_result($sql,$i,"id_membre"); $nom = mysql_result($sql,$i,"nom"); .... } echo "</tbody></table>"; echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages for($i=1; $i <= $nombreDePages; $i++) //On fait notre boucle { //On va faire notre condition if($i == $pageActuelle) //Si il s'agit de la page actuelle... { echo ' [ '.$i.' ] '; } else //Sinon... { echo ' <a href="index.php?page=liste&page'.$i.'">'.$i.'</a> '; } } echo '</p>'; ?>
Le nombre d'enregistrements par page est correcte, ainsi que l'affichage du nombre de pages
Quand je clique sur 2 pour afficher la suite, c'est la page 1 qui reste affichée.
Merci d'avance
Partager