用mysql的话你可以在建立记录集的时候加个限制条件
limit 1,20
这就是选取其中1至20的记录
你可以利用这个来分页
翻页之后用
limit 21,40
以此类推

解决方案 »

  1.   

    偶初学php,不是很懂,能否提供一个简单的例子看看,谢谢
      

  2.   

    <?
    //--------------------------------分页显示页面函数-------------------------//
    //////////////////////////////////POWER BY SYC////////////////////////////////////////////
    //首先定义你的数据库配制;你也可以用INCLUDE函数从外部调用配制,但是要保证变量名称要与下面的变量相同/
    //本函数丛数据库中读数据排序是按ID号,因此你必须保证你的数据库中又该字段;否则你必须修改"31"行参数;/
    //----------------------------------------------------------------------------//
    $count=2;           //一页显示多少;
    $host="localhost"; //数据库服务器名称;
    $user="root";      //数据库用户;  
    $pass="";          //数据库密码;             
    $db="test";            //数据库名字;
    $biao="ly";          //数据表;             $link=mysql_connect($host,$user,$pass) or die ("不能连接数据库!");
                 mysql_select_db($db,$link);
                 $num="select * from $biao";
                 $query=mysql_query($num);
                 $total=mysql_num_rows($query);  //取得纪录的总个数;
         //判断偏移量(每一页的首条纪录)是否存在,没有则设为0;
                     if (empty($offset))
                           {
                               $offset=0;
                            }
        //------------------------------------------------------------//
        //从数据库中读纪录;
                
     $query="select * from $biao ORDER BY ID DESC LIMIT $offset,$count";
     $results=mysql_query($query);
     while($array=mysql_fetch_array($results))
          { 
       //-------以下是从数据库读出你的数据表中的字段,根据你的情况更改;--------------//
       //以下为例子:
              $a=$array["name"];
      $b=$array["mail"];
      $c=$array["content"];
      $d=$array["date"];
      $e=$array["ip"];
      $f=$array["reply"];    //-----------------------此处显示你的数据内容根据你的情况更改----------------------------//
            echo "<tr><td><font color=red>$a</font></td></tr>&nbsp;&nbsp;&nbsp;&nbsp;";
        echo "<tr><td><font color=red>$b</font></td></tr>&nbsp;&nbsp;&nbsp;&nbsp;";
        echo "<tr><td><font color=red>$c</font></td></tr>&nbsp;&nbsp;&nbsp;&nbsp;";
        echo "<tr><td><font color=red>$d</font></td></tr>&nbsp;&nbsp;&nbsp;&nbsp;";
        echo "<tr><td><font color=red>$e</font></td></tr>&nbsp;&nbsp;&nbsp;&nbsp;";
        echo "<tr><td><font color=red>$f</font></td></tr>&nbsp;&nbsp;&nbsp;&nbsp;";
        echo "<hr color=#FF00CC><br><br>
    ";
      }
      //-----------------------分页-------------------------------------------------------//
      $pages=ceil($total/$count);      //$pages为总共现有的页数;
      for($i=1;$i<=$pages;$i++)
         {
                 $newoffset=$count*($i-1);
     echo "<a href=$PHP_SELF?offset=$newoffset>$i</a>&nbsp;";
     }
     if($offset) //如果偏移量是0,不显示前一页的连接;
                {
    $preoffset=$offset-$count;
    echo "<a href=$PHP_SELF?offset=$preoffset><<<前一页</a>&nbsp;";
    }
     if($pages!=0&&($offset/$count+1)!=$pages)//检查是否是最后一页;
                {
    $newoffset=$count*(ceil($offset/$count)+1);
    echo "<a href=$PHP_SELF?offset=$newoffset>下一页>>></a>&nbsp;";
    }?>
      

  3.   

    是什么样的分页呢?看看这个行不行》
    http://.love.pc80.com
      

  4.   

    在这给个GUESTBOOK的程序给你研究研究吧 :>
    <!-- filename:guestbook.php #-->
    <html> 
    <head> 
    <meta content="text/html; charset=gb2312" http-equiv=Content-Type> 
    <title>Guestbook</title> 
    </head> 
    <body bgcolor=ffffff> 
    <?php 
    //数据库操作部分 
    $conn=odbc_connect("Myguestbook","USER","PASSWORD");
    $query="SELECT ref, id, alias, ip, msgdate, email, msg FROM guestbook where flag='1' order by msgdate desc"; 
    $result=odbc_do($conn,$query);
    //数据库你随便建一个便是了
    $i=0; 
    while(odbc_fetch_row($result)) { 
      $guestbook[$i][0] = odbc_result($result,0); 
      $guestbook[$i][1] = odbc_result($result,1); 
      $guestbook[$i][2] = odbc_result($result,2); 
      $guestbook[$i][3] = odbc_result($result,3); 
      $guestbook[$i][4] = odbc_result($result,4); 
      $guestbook[$i][5] = odbc_result($result,5); 
      $guestbook[$i][6] = odbc_result($result,6); 
       $i++; 

    //取得数据库中的记录,并且存放在数组中
    odbc_close($conn); 
    //然后,关闭数据库
    if ($QUERY_STRING!="") { 
      $page = $QUERY_STRING; 
    } else { 
      $page = 0; 

    //可以用来直接显示第几页,如:guestbook.php?3表示显示每3页
    $i=count($guestbook);     //总的记录条数
    $msgnum=10;   //每页显示记录数,如果数据库中的记录不多的话
           //为了体现分页,可设置小一点
    $start = $page * $msgnum;  //开始页号
    $end = $start + $msgnum;  //结束页号
    if ($end > $i) $end=$i;    //实现分页的关键,好好分析
    $totalpage=$i/$msgnum; 
    $pagestr=""; 
    if ($page>0) $pagestr=$pagestr."<a href=guestbook.php?".($page-1).">&lt;Previous</a> - ";    //显示前一页
    $pagestr=$pagestr."[Page "; 
    for ($i=0; $i<$totalpage; $i++) { 
      if ($i!=$page) { 
        $pagestr = $pagestr."<a href=guestbook.php?$i>".($i+1)."</a> "; 
      } else { 
        $pagestr = $pagestr.($i+1)." "; 
      } 

    $pagestr=$pagestr." ] "; 
    if ($page<($totalpage-1)) $pagestr=$pagestr."- <a href=guestbook.php?".($page+1).">Next &gt;</a> ";   //下一页
    $pagestr="<div align=center>$pagestr</div>"; 
    echo "<p>".$pagestr."<hr><p>\n"; 
    //显示数据库中的内容
    for ($i=$start; $i<$end; $i++) { 
      echo "\n"; 
      echo "<p>\n<font color=e06060>Published ".$guestbook[$i][5]."</font> &nbsp; "; 
      if ($guestbook[$i][6]!="") echo "<a href=mailto:".$guestbook[$i][6].">"; 
      echo "<strong>".$guestbook[$i][3]."</strong>"; 
      if ($guestbook[$i][6]!="") echo "</a>"; 
      echo "<br>\n"; 
      echo "<font size=-1 color=c0c0c0>from: ".$guestbook[$i][4]."</font><p>\n"; 
      $msg=base64_decode($guestbook[$i][7]); 
      $msg=nl2br($msg); 
      echo $msg; 
      echo "<p>\n"; 
    }  
    echo "<p><hr><p>\n"; 
    echo $pagestr; 
    ?> 
    </body> 
    </html> 适当的地方自己改改吧,不好意思哦。