Bonjour,

J'ai le code suivant qui numérote mes enregistrements :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php 
 
	$ie2 = 1;//initialisation boucle pour comptage enregistrement
 
	 while ($data = mysql_fetch_assoc($resultat_livre)) {
 
          echo '<p class="numlivre">'.$ie2.'.<p/>';//affichage numérotation
 
          echo '<p class="titre"><a href="fiche.php?id_livre='.$data['id_livre'].'">'.$data ['titre'].'</a></p>';
 
          $ie2 ++;//boucle pour compter livres
 
 
		} ?>
Mon comptage fonctionne (1...40). Mais pas totalement. En effet, lorsque je passe à la page suivante de mes enregistrements, le comptage recommence à 1 alors que je souhaite qu'il s'incrémente en continu au fil des pages (41...). Mon problème est lié à la pagination dont voici le code :

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
//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); 
 
// Affichage
 
 
echo '<p class="pagination_bas">' . pagination($page, $nb_pages,'?page=%d&amp;tri='.$choix_tri.'&amp;filtre='.$choix_filtre.'&amp;senstri='.$sens_tri.'&amp;clesearch='.$clesearch.'&amp;search='.$search) . '</p>';
Ce système de pagination fait appel à la fonction suivante :

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
49
50
51
52
53
54
function pagination($current_page, $nb_pages, $link='?page=%d', $around=2, $firstlast=2) 
{
	$pagination = '';
	$link = preg_replace('`%([^d])`', '%%$1', $link);
	if ( !preg_match('`(?<!%)%d`', $link) ) $link .= '%d';
	if ( $nb_pages > 1 ) {
 
		// Lien précédent
		if ( $current_page > 1 )
			$pagination .= '<a class="prevnext" href="'.sprintf($link, $current_page-1).'" title="Page précédente">&laquo; Précédent</a>';
		else
			$pagination .= '<span class="prevnext disabled">&laquo; Précédent</span>';
 
		// Lien(s) début
		for ( $i=1 ; $i<=$firstlast ; $i++ ) {
			$pagination .= ' ';
			$pagination .= ($current_page==$i) ? '<span class="current">'.$i.'</span>' : '<a href="'.sprintf($link, $i).'">'.$i.'</a>';
		}
 
		// ... après pages début ?
		if ( ($current_page-$around) > $firstlast+1 )
			$pagination .= ' &hellip;';
 
		// On boucle autour de la page courante
		$start = ($current_page-$around)>$firstlast ? $current_page-$around : $firstlast+1;
		$end = ($current_page+$around)<=($nb_pages-$firstlast) ? $current_page+$around : $nb_pages-$firstlast;
		for ( $i=$start ; $i<=$end ; $i++ ) {
			$pagination .= ' ';
			if ( $i==$current_page )
				$pagination .= '<span class="current">'.$i.'</span>';
			else
				$pagination .= '<a href="'.sprintf($link, $i).'">'.$i.'</a>';
		}
 
		// ... avant page nb_pages ?
		if ( ($current_page+$around) < $nb_pages-$firstlast )
			$pagination .= ' &hellip;';
 
		// Lien(s) fin
		$start = $nb_pages-$firstlast+1;
		if( $start <= $firstlast ) $start = $firstlast+1;
		for ( $i=$start ; $i<=$nb_pages ; $i++ ) {
			$pagination .= ' ';
			$pagination .= ($current_page==$i) ? '<span class="current">'.$i.'</span>' : '<a href="'.sprintf($link, $i).'">'.$i.'</a>';
		}
 
		// Lien suivant
		if ( $current_page < $nb_pages )
			$pagination .= ' <a class="prevnext" href="'.sprintf($link, ($current_page+1)).'" title="Page suivante">Suivant &raquo;</a>';
		else
			$pagination .= ' <span class="prevnext disabled">Suivant &raquo;</span>';
	}
	return $pagination;
}
Voyez-vous comment parvenir "au comptage en continu" que je souhaite obtenir ? Merci d'avance.