データベースからの情報(記事名、記事の作成者など)を表示するページ(.php)で作業しています。また、適切に機能するページ付けスクリプトもあります(ページ付けスクリプトのアイデアは、サイトのURLのリンクを押すことです。 ?page = 2のようになります)ここで、フォームデータベースに表示するレコードに番号を付けようとしますが、どうすればよいですか?
ページネーションスクリプト:
$per_pages = 6;
$nrofarticles_query = mysql_query("SELECT COUNT('id') FROM tbl_articles");
$nrdearticole = mysql_result($nrofarticles_query, 0);
$totalpages = ceil($nrdearticole/$per_pages);
$currentpagedisplay = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
$firstpair = ($currentpagedisplay - 1) * $per_pages;
私は次のようにデータベースからレコードをエコーします:
$articles_set = mysql_query("SELECT * FROM tbl_articles LIMIT $firstpair, $per_pages");
while($article = mysql_fetch_array(article_set)){
echo $article['article_name'];
}
したがって、ページ変更時にデータベースから6つのレコードを表示し、次の6つのレコードを表示するか、6未満の場合は残りのレコード数を表示します。次のようにレコードに番号を付けるにはどうすればよいですか。
?page=1
1 article_name1
2 article_name2
3 article_name3
....
6 article_name6
?page=2
keep going
7 article_name7
8 article_name8
.....
編集
私は次のようなことを考えていました
<?php
$nrofarticles = 0;
$articles_set = mysql_query("SELECT * FROM tbl_articles LIMIT $firstpair,$per_pages");
confirm($articles_set);
while($article = mysql_fetch_array($articles_set)){
$nrofarticles ++;
}
echo "<ul id=\"id\">";
for($i = $firstpair+1; $i<=$nrofarticles * $currentpagedisplay; $i++){
echo '<li class="nr_id">' .$i. '<sub>#</sub></li>';
}
echo "</ul>";
?>
動作しますが、合計16の記事があるため、3の最初の2ページのみです。最後のページでは$ firstpair + 1は13になり、$ nrofarticles * $ currentpagedisplayは12(4(articles)* 3(page = 3)になります。 )。