2010-07-28 8 views
0

Je veux imprimer un nombre croissant avec chaque publication. Comme chaque forum a cela.pagination et numérotation des lignes

J'utilise actuellement ceci:

$i = 0; while ($post = mysql_fetch_assoc($rs)): $i++; 

permet de dire que j'imprimer 5 après par page

Voici ce qui se passe:

#1 First post 
#2 2nd post 
#3 3rd post 
#4 4th post 
#5 5th post 

Then you go to page to 2 

#1 6th post 
#2 7th post 
#3 8th post 
#4 9th post 
#5 10th post 

Je ne veux pas, je veux garder increse numéro le plus élevé de la première page

Le sql:

SELECT u.group_id, u.username, u.title, p.poster, p.message, p.thread_id, g.g_title, g.g_user_title FROM posts AS p 
     INNER JOIN users AS u ON u.id = p.poster 
     INNER JOIN groups AS g ON g.g_id = u.group_id 
     WHERE p.thread_id = $id 
     LIMIT $startIndex, $perPage 

Répondre

1

Vous devez avoir une variable identifiant la page que vous êtes. Multipliez le nombre de pages par le nombre d'éléments par page. Voila, l'identifiant unique du premier élément de la page N.

1

Au lieu d'imprimer $row imprimer ($row + ($page * $pagesize))

+0

Il ne fonctionnera pas avec la page # 1 – Kirzilla

+0

Oui, ce sera si vous commencez à compter à 0. – tster

1

vous devez prendre en compte le numéro de page. si vous commencez à numéroter vos pages avec 0 vous devez commencer à compter à currentPageNumber $ * $ itemsPerPage

0
if ($page == 1) { 
    $ex_page = 0; 
} else { 
    $ex_page = $page; 
} 

$big_post_number = $row_num + $ex_page * $items_per_page; 
+0

Cela ne fonctionnera pas avec n'importe quelle page supérieure à 2 – tster