http://www.linuxbyte.net/view.php?skin=art&ID=3566
这里有一篇相关文章也许对你有帮助

解决方案 »

  1.   

    http://zwills.xxiyy.com/mikespook/softlist.asp?id=70看include文件夹里的inc_data.php文件~~~里面有个简单的分页的类~~
      

  2.   

    先给你三个函数
    function page_break1($sqlstr)/////
    ///////分页的第一个处理程序,用来处理一系列环境变量.
            {
            global $per_page,$per_screen,$page,$screen,$id_from,$id_count,$page_count,$screen_count;
            if (!isset($page)) $page=0;
            if (!isset($screen)) $screen=0;
            if (!isset($per_page)) $per_page=12;
            if (!isset($per_screen)) $per_screen=8;
    $id_from=$screen*$per_screen*$per_page+$page*$per_page;                 //id_from
            $query=mysql_query($sqlstr);
            $id_count=mysql_num_rows($query);  ////id count
            $temp=$id_count%$per_page;
            if ($temp==0)
            $page_count=(int)($id_count/$per_page); //page_count
            else
            $page_count=(int)($id_count/$per_page)+1;
            $temp=$page_count%$per_screen;
            if ($temp==0)
            $screen_count=(int)($page_count/$per_screen);  //screen_count
            else
            $screen_count=(int)($page_count/$per_screen)+1;
            $str= $sqlstr." limit $id_from,$per_page";
            return mysql_query($str);
            }function page_break2()////////////分页的第二个处理程序,用来输出超级联结
    {
    global $per_page,$per_screen,$page,$screen,$id_from,$id_count,$page_count,$screen_count;
                               //display the navigator of the page
    if ($screen>0)   //display the previous screen
            {
            $temp=$screen-1;
            echo("[<a href='$PHP_SELF?screen=$temp'>前".$per_screen."页</a>]");
            };
    if ($screen<$screen_count-1)
            {
            for ($i=0;$i<$per_screen;$i++)   //display the page
                    {
                    if ($i==$page)
                            {
                            if ($i!=0)
                                echo(" ");
                            $temp=$i+1;
                            echo("[".$temp."]");
                            continue;
                            }
                    else
                            {
                            if ($i!=0)
                                echo(" ");
                            $temp=$i+1;
                  echo("[<a href='$PHP_SELF?screen=$screen&page=$i'>".$temp."</a>]");
                            continue;
                            };
                    }; //end for
            //display the next screen
            $temp=$screen+1;
            echo("[<a href='$PHP_SELF?screen=".$temp."'>下".$per_screen."页</a>]");
            }
    else
            {
            if ($screen>$screen_count-1)
                    {
                   // echo("<br><br><br>没有数据!<br><br>");
                   // echo "[<a href='javascript:window.history.go(-1)'>返回</a>]";
                   // exit;
                    }
            else          //screen=screen_count-1
                    {
                    if ($screen_count==1)
                         $temp_page=$page_count;
                    else
                        $temp_page=$page_count%$per_screen;
                    for ($i=0;$i<$temp_page;$i++)
                            {
                            if ($i==$page)
                                    {
                                     if ($i!=0)
                                          echo(" ");
                                    $temp=$i+1;
                                    echo("[".$temp."]");
                                    continue;
                                    }
                            else
                                    {
                                    if ($i!=0)
                                         echo(" ");
                                    $temp=$i+1;
                                    echo("[<a href='$PHP_SELF?screen=$screen&page=$i'>".$temp."</a>]");
                                    continue;
                                    };
                            };
                    };
            };
       }//end funcfunction page_break3($key)////////////分页的第二个处理程序,用来输出超级联结
    {
    global $per_page,$per_screen,$page,$screen,$id_from,$id_count,$page_count,$screen_count;                           //display the navigator of the pageif ($screen>0)   //display the previous screen
            {
            $temp=$screen-1;
            echo("[<a href='$PHP_SELF?key=$key&screen=$temp'>前".$per_screen."页</a>]");
            };
    if ($screen<$screen_count-1)
            {
            for ($i=0;$i<$per_screen;$i++)   //display the page
                    {
                    if ($i==$page)
                            {
                            if ($i!=0)
                                echo(" ");
                            $temp=$i+1;
                            echo("[".$temp."]");
                            continue;
                            }
                    else
                            {
                            if ($i!=0)
                                echo(" ");
                            $temp=$i+1;
        echo("[<a href='$PHP_SELF?key=$key&screen=$screen&page=$i'>".$temp."</a>]");
                            continue;
                            };
                    }; //end for
            //display the next screen
            $temp=$screen+1;
            echo("[<a href='$PHP_SELF?key=$key&screen=".$temp."'>下".$per_screen."页</a>]");
            }
    else
            {
            if ($screen>$screen_count-1)
                    {
                   // echo("<br><br><br>没有查到任何数据!<br><br>");
                   // echo "[<a href='javascript:window.history.go(-1)'>返回</a>]";
                   // exit;
                    }
            else          //screen=screen_count-1
                    {
                    if ($screen_count==1)
                       $temp_page=$page_count;
                    else
                        $temp_page=$page_count%$per_screen;
                    for ($i=0;$i<$temp_page;$i++)
                            {
                            //echo "$i-$temp_page<br>";
                            if ($i==$page)
                                    {
                                     if ($i!=0)
                                          echo(" ");
                                    $temp=$i+1;
                                    echo("[".$temp."]");
                                    continue;
                                    }
                            else
                                    {
                                    if ($i!=0)
                                         echo(" ");
                                    $temp=$i+1;
                                    echo("[<a ref='$PHP_SELF?key=$key&screen=$screen&page=$i'>".$temp."</a>]");
                                    continue;
                                    };
                            };
                    };
            };
       }//end func在使用的时候,假设表名为temp,字段有id,title,content,kind
    你可以这样用
    先设定每页显示的数目
    $per_page=10;
    $per_screen=10;//每页显示的链接数目
    $str="select id,title,content from temp";//查询语句
    $query=page_break1($str);
    page_break2()//显示链接
    while ($rs=mysql_fetch_array($query))
    {
     echo $rs[title].'<br>';//显示内容
    }
    如果你的查询是这样
    $str="select id,title,content from temp where kind='$kind'";//查询语句
    $query=page_break1($str);
    page_break3("&kind=".$kind)//显示链接时用第三个函数,把条件加进去
    while ($rs=mysql_fetch_array($query))
    {
     echo $rs[title].'<br>';//显示内容
    }
      

  3.   

    <?php
    $row=20;
    $num=count($lastbar);
    $icount=$row;
    if($gopage)
    $page=$gopage-1;
    if(!$page)
    $page=0;
    if($num % $icount!=0)
    {
    $pagearr=split("\.",$num / $icount);
    $pages=$pagearr[0]+1;
    }
    else
    {
    $pages=$num / $icount;
    }
    if($page>($pages-1))
    $page=$pages-1;
    $istart=$page*$row;
    $isend=($page+1)*$row;
    if($num<$isend)
    $totalall=$num;
    else
    $totalall=$isend;
    if($num<$row)
    $totalall=$num;
    for($jj=$istart;$jj<$totalall;$jj++)
    {
    //echo $lastbar[$jj][0]."<br>";
     echo "<tr bgcolor=\"#F2F2F2\">"; 
     echo "  <td width=\"14%\" height=\"1\"> <div align=\"center\">".$lastbar[$jj][0]."</div></td>";
     echo "  <td width=\"24%\" height=\"1\"> <div align=\"center\">". $lastbar[$jj][1]."</div></td>";
     echo "   <td width=\"31%\" height=\"1\"> <div align=\"center\">".$lastbar[$jj][2]."</div></td>";
     echo "   <td height=\"9\"> <div align=\"center\">".$lastbar[$jj][3]."</div></td>";
     echo " </tr>";
    ?>你参考一下!