Bonjour,
Le code suivant me permet d'afficher le nombre d'enregistrements retournés par ma requête :
J'utilise en complément un système de pagination :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $resultat_livre = mysql_query($select_livre)or die('Erreur SQL !'.$select_livre.'<br>'.mysql_error()); $nblignes = mysql_num_rows($resultat_livre); // Affichage nb enregistrements retournés if ($nblignes !=0) { echo '<p class="resultat">Résultat de la recherche : '.$nblignes .' occurrence(s) </p>'; } else { echo '<p class="resultat"><strong>aucun résultat</strong></p>';}
Tout est fonctionnel. Le code me renvoie 40 enregistrements et mon
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
47
48 //DEBUT PAGINATION /* Numero de page (1 par défaut) */ if( isset($_GET['page']) && is_numeric($_GET['page']) ) $page = $_GET['page']; else $page = 1; /* Nombre d'info par page */ $pagination = 40; /* Numéro du 1er enregistrement à lire */ $limit_start = ($page - 1) * $pagination; $requete_pagination = "SELECT COUNT(*) AS nb_total FROM livre "; $resultat_pagination = mysql_query($requete_pagination) or die('Erreur SQL !'.$requete_pagination.'<br>'.mysql_error()); $nb_total = mysql_fetch_array($resultat_pagination); $nb_total = $nb_total['nb_total']; /* Pagination */ $nb_pages = ceil($nb_total / $pagination); $choix_tri= (iSset($_GET['tri']) ? $_GET['tri'] : null); $choix_filtre= (iSset($_GET['filtre']) ? $_GET['filtre'] : null); $sens_tri= (iSset($_GET['senstri']) ? $_GET['senstri'] : null); $clesearch = (iSset($_GET['clesearch']) ? $_GET['clesearch'] : null); $search = (iSset($_GET['search']) ? $_GET['search'] : null); /* Boucle sur les pages */ echo '<p class="nump">[ Page :'; for ($i = 1 ; $i <= $nb_pages ; $i++) { if ($i == $page ) { echo '<em>'.$i.'</em>'; } else { echo ' <a class="numl" href="?page='.$i.'&tri='.$choix_tri.'&filtre='.$choix_filtre.'&senstri='.$sens_tri.'&clesearch='.$clesearch.'&search='.$search.'">'.$i.'</a> ';} // chaque variable est reprise } echo ' ]</p>';affiche donc à chaque page "...40 occurrences".
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo '<p class="resultat">Résultat de la recherche : '.$nblignes .' occurrence(s)
Ce que je souhaiterais implémenter, c'est la gestion d'un affichage du nombre d'enregistrements en cours sur la page par rapport au nombre total enregistrements retournés par la requête. En fait, je souhaite obtenir ce que fait PhpMyadmin:
Affichage des enregistrements 0 - 29 (1 490 total) pour la page 1
Affichage des enregistrements 30 - 59 (1 490 total) pour la page 2
etc
Voyez-vous comment adapter mon code pour obtenir l'effet souhaité ? Merci d'avance.
Partager