Blogger Information
Blog 29
fans 0
comment 0
visits 25288
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
完成员工信息表的分页显示功能:2019年2月28号作业
连界现代周伟的博客
Original
993 people have browsed it

分页显示要注意的几点:

  1. 要设置每一页显示的记录数量:$pageNum

  2. 获取当前的页数:url参数: $page=isset($_GET['p']) ? $_GET['p'] : 1;

  3. 获取总记录数:$total  总的记录数量

  4. 获取总页数:  $pages  = ceil($total / $pageNum)   //ceil()函数为向上取整

  5. 获取每一页的起始索引: 偏移量  :  $offset = ($page - 1) * $pageNum

实例  (staff_list.php)

<?php

// 员工信息
//1.连接数据库
$pdo = new PDO('mysql:host=127.0.0.1;dbname=php','root','root');
//分页显示
//设置一下每一页显示的记录
$pageNum = 5;
//获取当前 的页数:URL参数
$page = isset($_GET['p']) ? $_GET['p'] : 1;
//获取总页数
$stmt = $pdo->prepare('SELECT COUNT(*) FROM `staff`');
$stmt->execute();
$total = $stmt->fetchColumn(0);
$pages = ceil($total / $pageNum);  //ceil()向上取整
//每一页的起始索引:偏移量
$offset = ($page - 1) * $pageNum;





//2.执行的操作
$sql = "SELECT * FROM `staff` WHERE `is_show`=1 LIMIT {$offset},{$pageNum}";
$stmt = $pdo->prepare($sql);
$stmt->execute();
$staffs = $stmt->fetchAll(PDO::FETCH_ASSOC);

//3.关闭连接
$pdo = null;
// 标题
$title = '员工信息表';

// 表格标题
$tableTitle = $title;

// 员工数量
//$total = count($staffs);
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title><?php echo $title; ?></title>
    <style>
        table,th,td {
            border: 1px solid #666;
            padding: 8px;
        }
        table {
            border-collapse: collapse;
            width: 80%;
            text-align: center;
            margin: 30px auto;
        }
        thead tr:first-of-type {
            background-color: lightblue;
        }

        tbody tr:hover {
            background-color: #efefef;
        }

        table > caption {
            font-size: 1.2rem;
            margin-bottom: 15px;
        }
        /*.total {*/
            /*text-align: center;*/
        /*}*/
        table ~ p {
            text-align: center;
        }
        table + p a {
            display: inline-block;
            width: 50px;
            height: 24px;
            border: 1px solid #333;
            text-decoration: none;
        }
        table + p a:hover {
            background: lightblue;
        }

        button:hover {
            cursor: pointer;
            background-color: lightblue;
        }

        /*添加按钮给个特殊样式*/
        #add {
            height: 25px;
            width: 90px;
            position: absolute;
            left: 650px;
            top: 40px;
        }

    </style>
</head>
<body>
<button onclick="location.href='staff_add.php'" id="add">添加</button>

<table>
    <caption>
        <?php
        echo '<span style="color:red">' . $tableTitle . '</span>';
        ?>
    </caption>
    <thead>
    <tr>
        <th>编号</th>
        <th>姓名</th>
        <th>年龄</th>
        <th>性别</th>
        <th>手机</th>
        <td>入职</td>
        <th>操作</th>
    </tr>
    </thead>
    <tbody>

    <!--foreach()替代语法-->
    <?php foreach($staffs as $staff) : ?>
        <tr>

            <td><?php echo $staff['id']; ?></td>
            <td><?php echo $staff['name']; ?></td>


            <td><?php echo $staff['age']; ?></td>

            <!--if()替代语法-->
            <td>
                <?php if($staff['sex'] == 1) : ?>
                    男
                <?php else: ?>
                    女
                <?php endif; ?>
            </td>


            <!--如果只是简单的输出变量可以使用php短标签语法-->
            <td><?=$staff['mobile']?></td>

            <td>
                <?php
                echo date('Y/m/d',$staff['hiredate']);
                ?>
            </td>

            <td>
                <button onclick="location.href='staff_edit.php?id=<?=$staff['id']?>'">编辑</button>
                <button onclick="return confirm('是否删除?') ? location.assign('staff_manage.php?action=del&id=<?=$staff['id']?>') : false"><span style="color:red">删除</span></button>
            </td>

        </tr>
    <?php endforeach;?>

    </tbody>
</table>


<!--<p>
    <a href="staff_list.php?p=1">1</a>
    <a href="staff_list.php?p=2">2</a>
    <a href="staff_list.php?p=3">3</a>
    <a href="staff_list.php?p=4">4</a>
    <a href="staff_list.php?p=5">5</a>
</p>-->
<!--动态生成页码-->
<p>
    <a href="staff_list.php?p=1">首页</a>
<?php for($i=1;$i<=$pages;$i++): ?>
<!--    <a href="staff_list.php?p=--><?//=$i?><!--">--><?//=$i?><!--</a>-->
<!--将当前页码高亮-->
<?php if(isset($_GET['p']) && $_GET['p'] == $i) {
    $bgColor = 'style="background: lightblue"';
    } else {
    $bgColor = '';
    }
?>

    <a href="javascript: location.href='<?=$_SERVER['PHP_SELF']?>?p=<?=$i?>'" <?=$bgColor?>><?=$i?></a>

<?php endfor; ?>
    <a href="staff_list.php?p=<?=$pages?>">尾页</a>
</p>

<p class="total">总计:<?php echo $total;  ?>人</p>

</body>

</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post