php分页代码

今天在BT5中一不小心发现了自己实习时,看PHP写的一个php分页代码。没啥看点,看了跟网上他们写的也没啥不同。

贴出来也给跟我一样的菜鸟瞅瞅吧。我这php算是速成产品,当时写个这分页,也出现不少问题。不过问题出现的多,才能学到东西,哈哈·····喜欢问题···

我的数据库就两个字段一个id,一个doc,id还是自增字段。

<html>
<head>
<title>
ShowData
</title>
</head>
<body>
<h2>ShowData</h2>
<?php
    //连接数据库    
    $page = 1;
        $db = mysql_connect('127.0.0.1','root','toor');
        mysql_select_db('test',$db);
    
        $pagesize = 3;    //每页显示到数量
    
    //计算一共有多少记录,用于计算页数
    $rs = mysql_query("select count(*) from info",$db);
    $row = @mysql_fetch_array($rs);
    $numrows = $row[0];

    //计算页数
    $pages = intval($numrows / $pagesize);
    if ($numrows % $pagesize)
    {
        $pages++;
    }

    //设置页数
    if (isset($_GET['page']))
    {    
        $page = intval($_GET['page']);
    }
    else
    {
        $page = 1;        //其他情况,都指向第一页
    }
    
    //计算记录的偏移量
    $offset = $pagesize * ($page - 1);

    //读取指定记录
    $rs = mysql_query("select * from info order by id limit $offset,$pagesize",$db);

    //把数据用表格显示出来
    if ($row = @mysql_fetch_array($rs))
    {
        $i = 0;
        ?>
        <table border='0' width='80%'>
        <tr>
        <td width='50%'>
        <p align='center'>ID</td>
        <td width='50%'>
        <p align='center'>DOC</td>
        </tr>
        <?php
            do{
                $i++;
        ?>
        <tr align='center'>
        <td width='50%'><?=$row['id']?></td>
        <td width='50%'><?=$row['doc']?></td>
        </tr>
        <?php
            }
            //循环显示数据
            while ($row = mysql_fetch_array($rs));
            echo "</table>";
    }
    echo "<div align='center'> 共".$pages."页(".$page."/".$pages.")";
    for ($i = 1;$i < $page;$i++)
    {
        echo "<a href='showdata.php?page=".$i."'>[".$i."]</a>";
    }
    echo "[".$page."]";
    for ($i = $page + 1;$i <= $pages;$i++)
    {
        echo "<a href='showdata.php?page=".$i."'>[".$i."]</a>";
    }
    echo "</div>";

    ?>

</body>
</html>

 

posted @ 2013-01-27 19:04  xss  阅读(6132)  评论(0编辑  收藏  举报