2012-08-30 63 views
-2

我工作在一个页面(.php)上,它显示了一些来自数据库的信息(如文章名称,文章作者)。我也有一个分页脚本很好用(分页脚本的理念是当我按下链接网站的网址就像?page = 2)现在我尝试编号显示表单数据库的记录。但我该怎么做?继续编号PHP

分页脚本:

$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>"; 
?> 

它,但只在第一页2的3作品,因为我总共有16篇 - 等最后一页$ firstpair + 1将13 $ nrofarticles * $ currentpagedisplay将是12(4(articles)* 3(page = 3))。

+0

$ _GET ['page'] - 1 * 6应该是第一个索引 –

+0

@Jack:在第一页检查您的计算:1 * 6 + 1将是第一个索引,但会显示“7” –

+0

重复:http://stackoverflow.com/questions/10907536/implementing-pagination-in-php –

回答

0

去使用一个框架。你会免费获得分页(和各种额外的)。