php實作記錄分頁的思路是什麼

藏色散人
發布: 2023-03-14 12:12:02
原創
2004 人瀏覽過

php實現記錄分頁的想法:1、取得結果集中的記錄數;2、設定每頁顯示記錄的數量;3、取得總頁數;4、控制每頁顯示的記錄數;5 、透過傳遞參數的方式通知腳本程式顯示的頁碼即可。

php實作記錄分頁的思路是什麼

本文操作環境:Windows7系統,PHP7.4版,Dell G3電腦。

php實作記錄分頁的想法是什麼?

PHP Mysql 實作資料分頁顯示:

  • 取得結果集中的記錄數可以在SELECT語句中使用COUNT()函數取得結果集中的記錄數量

  • 設定每頁顯示記錄的數量假定使用變數$PageSize來保存每頁顯示記錄的數量,它的值由使用者根據需要自行設置,可以直接透過賦值語句來實現。

  • 取得總頁數可以透過$RecordCount$PageSize兩個資料計算得到總頁數$PageCount

  • 如何顯示第n 頁的記錄雖然使用PageSize屬性可以控制每頁顯示的記錄數,但是要顯示那些記錄呢?可以在SELECT陳述式中使用LIMIT子句指定查詢記錄的範圍, 其使用方法如下: SELECT * FROM 表名LIMIT起始位置, 顯示記錄數量例如,要取得第$Page 頁中的記錄,可以使用下面的語句:SELECT * FROM 表名LIMIT ($Page- 1) * $ PageSize, $ PageSize

  • 如何通知腳本要顯示的頁碼可以透過傳遞參數的方式通知腳本程式顯示的頁碼。假定分頁顯示記錄的腳本為 viewPage. php,傳遞參數的連結如下:http:// localhost/ viewPage. php? page= 2 參數page用來指定目前的頁碼。在viewPage. php中,使用下面的語句讀取參數:

<!doctype html>
<html>
<head>
    <meta charset="utf-8" />
    <title>Document</title>
</head>
<body>
    <?php 
    header("content-type:text/html;charset=utf-8");
        //获取当前页码
        $page=$_GET[&#39;page&#39;];
        if($page==0){
            $page=1;
        }
        //设置每页最大能显示的数量
        $pagesize=3;

        //连接数据库
        $conn=mysql_connect("localhost","root","root");
        mysql_select_db("test");
        mysql_query("set names utf-8");
        if(!$conn){
            die("mysql_connect_failed".mysql_connect_error());
        }
        else 
            echo("connected succeed"."<br />");
        //获取结果集的记录数
        $row=mysql_fetch_row(mysql_query("select count(1) from clerk"));
        $recordcount=$row[0]; 




        //计算总页数
        if($recordcount==0)
            $pagecount=0;
        else if($recordcount<$pagesize ||$recordcount==$pagesize){
                $pagecount=1;
                //如果 记录 总数 量小 于 每页 显示 的 记录 数量, 则 只有 一页
            }
        else if($recordcount%$pagesize==0){
                $pagecount=$recordcount/$pagesize;
                //如果 没有 余数, 则 页数 等于 总 记录 数量 除以 每页 显示 记录 的 数量
            }
        else 
                $pagecount=(int)($recordcount/$pagesize)+1;
                //取 记录 总数 量 不能 整除 每页 显示 记录 的 数量,
                // 则 页数 等于 总 记录 数量 除以 每页 显示 记录 数量 的 结果 取整 再加 1

        echo("当前页码:".$page."/".$pagecount."<br />");

    ?>

    <table width="449" border="1">
        <tr>
            <td>员工姓名</td>
            <td>职务</td>
            <td>薪水</td>
        </tr>
    <?php 
    //循环显示当前页面的记录
    header("content-type:text/html;charset=utf-8");
    echo $page;
    //$sql="select * from clerk limit" .($page-1)*$pagesize.",".$pagesize;  //$page为当前页码
    $sql=($page-1)*$pagesize;
    $result=mysql_query("select * from clerk limit {$sql},{$pagesize}");
    while($row=mysql_fetch_row($result))
    {   

        echo("<tr />");
        echo("<td>$row[0]</td>");
        echo("<td>$row[2]</td>");
        echo("<td>$row[3]</td>");
        echo("<tr />");
    }
    mysql_close($conn);

    //显示分页链接
    if($page==1){
        echo("第一页");
    }
    else
        echo("<a href=viewpage.php?page=1>第一页</a>");
        //设置上一页连接

    if($page==1){
         echo("上一页");
    }
    else 
        echo("<a href=viewpage.php?page=".($page-1).">上一页</a>");

        //设置下一页链接
    if($page==$pagecount){
        echo("下一页");
    }
    else 
        echo("<a href=viewpage.php?page=".($page+1).">下一页</a>");
    //设置最后一页
    if($page==$pagecount){
        echo("最后一页");
    }
    else 
        echo("<a href=viewpage.php?page=".$pagecount.">最后一页</a>");
    ?>
    </table>
</body>
</html>
登入後複製

php實作記錄分頁的思路是什麼

#推薦學習:《PHP影片教學

#

以上是php實作記錄分頁的思路是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板