繁体   English   中英

jQuery Datatable-服务器端使用Php处理数据分页

[英]jQuery Datatable - server side processing data pagination using Php

我对jquery数据表分页(服务器端处理)有问题。

例如,我在数据库中有24条记录。 计数正确显示,总分页也正确显示。

在此处输入图片说明

当我单击Next or 2nd page它会按照显示页面的长度显示记录。 在此处输入图片说明

在此不显示3rd Page最后4条记录。

这里我的服务器端代码是这样的

$this->db->select("SQL_CALC_FOUND_ROWS user_id,user_name,email", FALSE);

        $this->db->from("users");
     $sTable="users";
        // Data set length after filtering
        $this->db->select('FOUND_ROWS() AS found_rows');
        $iFilteredTotal = $this->db->get('users')->row()->found_rows;

        // Total data set length
        $iTotal = $this->db->count_all($sTable);


        // Output
        $output = array(
            'sEcho' => intval($sEcho),
            'iTotalRecords' => $iTotal,
            'iTotalDisplayRecords' => $iFilteredTotal,
            'aaData' => array()
        );

这样的客户端代码

$(document).ready(function () {
        $('#data_appraiser').dataTable({
            "bProcessing": true,
            "bServerSide": true,
            "oLanguage": {
                "sProcessing": imgsrc,
            },
            //"aaData": data.aaData,
             "iDisplayLength": 10,
             "aLengthMenu": [
                             [10, 25, 50],
                             [10, 25, 50] // change per page values here
                         ],
                "aaSorting": [[0, 'asc']],
                "sServerMethod": "POST",
                    "sAjaxSource": "appraiserlistajaxdata",

            "sPaginationType": "full_numbers"
            "aoColumns": [
                { "mData": "id" },
                { "mData": "appraiser_name" },
                { "mData": "user_name" }
               ....
            ]        
        });
    });

我检查了$iFilteredTotal总数。当页面更改时,值为20如果在1st page ,值为24我无法解决此问题。 抱歉,如果我的问题很奇怪。有谁能帮助我解决这个问题。 谢谢

您必须分别以开始和长度(例如$ _GET ['start'])作为偏移量和限制,然后在查询中应用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM