Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah idea untuk melaksanakan paging rekod dalam php?

Apakah idea untuk melaksanakan paging rekod dalam php?

藏色散人
藏色散人asal
2021-12-10 10:41:291998semak imbas

Idea untuk melaksanakan paging rekod dalam PHP: 1. Dapatkan bilangan rekod dalam set keputusan; 2. Tetapkan bilangan rekod yang dipaparkan pada setiap halaman; halaman; 4. Kawal bilangan rekod yang dipaparkan pada setiap halaman 5 , hanya beritahu program skrip nombor halaman yang dipaparkan dengan lulus parameter.

Apakah idea untuk melaksanakan paging rekod dalam php?

Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.4, komputer Dell G3.

Apakah idea untuk melaksanakan paging rekod dalam php?

PHP Mysql melaksanakan paparan paging data:

  • Untuk mendapatkan bilangan rekod dalam set hasil, anda boleh menggunakan fungsi COUNT() dalam pernyataan SELECT untuk mendapatkan bilangan rekod dalam set hasil

  • Tetapkan bilangan rekod yang dipaparkan pada setiap halaman dengan andaian pembolehubah$PageSizeUntuk menyimpan bilangan rekod yang dipaparkan pada setiap halaman, nilainya boleh ditetapkan oleh pengguna mengikut keperluan, yang boleh dicapai terus melalui penyata tugasan.

  • Dapatkan jumlah halaman Anda boleh mengira jumlah halaman melalui $RecordCount dan $PageSize Bagaimana dengan $PageCount

  • Memaparkan rekod pada halaman n Walaupun anda boleh menggunakan sifat PageSize untuk mengawal bilangan rekod yang dipaparkan pada setiap halaman, apakah rekod yang perlu dipaparkan? Anda boleh menggunakan klausa LIMIT dalam pernyataan SELECT untuk menentukan julat rekod pertanyaan Kaedah penggunaan adalah seperti berikut: PILIH * DARI nama jadual LIMIT kedudukan permulaan, paparkan bilangan rekod sebagai contoh, untuk mendapatkan rekod dalam halaman

    , anda boleh menggunakan Penyata berikut: $PageSELECT * FROM 表名LIMIT ($Page- 1) * $ PageSize, $ PageSize

  • Cara memberitahu skrip nombor halaman yang akan dipaparkan boleh digunakan untuk memberitahu skrip nombor halaman yang akan dipaparkan dengan lulus parameter. Andaikan bahawa skrip untuk rekod halaman adalah viewPage.php, dan pautan untuk menghantar parameter adalah seperti berikut:

    Parameter halaman digunakan untuk menentukan nombor halaman semasa. Dalam viewPage.php, gunakan pernyataan berikut untuk membaca parameter: http:// localhost/ viewPage. php? page= 2

<!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>

Apakah idea untuk melaksanakan paging rekod dalam php?

Pembelajaran yang disyorkan: "

Tutorial Video PHP

Atas ialah kandungan terperinci Apakah idea untuk melaksanakan paging rekod dalam php?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn