PHP+MySQL+LayUI分页查询显示

阅读量:163
2021-04-12

 

  • html构建前端样式
  • AJAX异步请求数据
  • 使用layui.table数据表格的方法渲染。

1.HTML文件

<p class="layui-card-body ">
        <table id="demo" class="layui-hide"></table>
        <p id="pageUD"></p></p><script src="js/jquery.min.js"></script><script>
    var pageNum = 0;
    var limit = 10;
    var page = 1;
    $.ajax({
        url: "laypage.php",
        async: false,
        type: "post",
        success: function (res) {
            pageNum = res; //取到数据总条数
            // console.log(res)
        }
    });
    layui.use('table', function () {
        var table = layui.table;

        table.render({
            elem: '#demo',
            method: 'post',
            url: 'paging.php',
            limit: limit,
            page: page,
            cellMinWidth: 80, //全局定义常规单元格的最小宽度,layui 2.2.1 新增
            cols: [[
                {checkbox: true},
                {field: 'id', width: 80, sort: true, title: 'ID'},
                {field: 'donor', width: 240, sort: true, title: '姓名/昵称'},
                {field: 'object', width: 180, sort: true, title: '捐助项目'},
                {field: 'money', width: 150, sort: true, title: '捐助金额'},
                {field: 'time', width: 200, sort: true, title: '捐助时间'},
                {field: 'type', width: 100, sort: true, title: '捐助类型'},
                {field: 'message', width: 200, title: '备注/留言'}
            ]]
        });
    });</script>

从前端获取page和limit两个变量,交给MySQL中的 limit 进行分页查询,将查询的结果拼装后以前端LayUI框架规定的json形式返回。

2.laypage.php 文件

laypage.php 功能是获取数据总数并返回给前端展示。

<?php
    require ('db_config.php');
    $sql = 'select count(*) from donation_copy1';
    $result = $mysqli->query($sql);
    $sum = mysqli_fetch_row($result);
    echo ceil($sum[0]/1);
?>

3.paging.php 文件

laypage.php 功能是根据前端传递的变量指定参数分页查询数据并返回给前端展示。

<?php
    header("content-type:text/html;charset=utf-8;");
    require ('db_config.php');$limit = $_POST['limit'];
    $page = $_POST['page'];$new_page = ($page - 1)*$limit;
    $sql = "select * from donation_copy1 order by id desc limit " .$new_page.",".$limit;
    $result = $mysqli->query($sql);
    $sql2 = 'select * from donation_copy1';
    $count = mysqli_num_rows($mysqli->query($sql2));
    $arr = array();
    while ($row = mysqli_fetch_array($result)) {  
    $arr[] = $row;}$donation_data = array(  // 拼装成为前端需要的JSON
    'code'=>0,
    'msg'=>'',
    'count'=>$count,
    'data'=>$arr);
    echo json_encode($donation_data);
    //echo $sql;
    ?>

最终页面效果如下所示:
PHP+MySQL+LayUI分页查询显示 (https://www.xwwx.net/) PHP教程 第1张

 

THE END

发表评论

相关推荐

  • php getdate函数怎么用

    php getdate函数用于返回当前本地的“日期/时间”的“日期/时间”信息,其语法为“getdate(timestamp)”,该函数会返回带有与时间 ...

    阅读量:125
    2021-04-19
  • column的10篇内容推荐

    column-fill属性会将不同高度的指定列以高度差最小化的方式进行对齐,这里我们就来看一下CSS3的column-fill属性对齐列内容高 ...

    阅读量:135
    2021-04-19
  • PHPMailer 中文使用说明小结_PHP教程

    A开头: $AltBody --属性 出自:PHPMailer : $AltBody 文件:class.phpmailer .php 说明:该属性的设置是在邮件正文不支持HT ...

    阅读量:169
    2021-04-19
  • php date与gmdate的获取日期的区别_PHP教程

    date -- 格式化一个本地时间/日期   gmdate -- 格式化一个 /UTC 日期/时间,返回的是格林威治标准时(GMT)。   举个 ...

    阅读量:135
    2021-04-19
  • php 正确解码javascript中通过escape编码后的字符_PHP教程

    这是很久以前收集的一个,不知道谁写的了,但经过测试没有问题~ JavaScript代码

    阅读量:137
    2021-04-19