dongzao9044 2015-06-26 03:04
浏览 71

如何在数据表中对列进行求和(我使用的是codeigniter)

I'm using codeigniter and datatables for my view data. But i'm stuck how to get sum column. I have 2 fields named barang_qty, and barang_qty_toko. I need to sum this and display on datatables.

This is my Controller :

    function ajax_tableBarang(){
    if(!$this->input->is_ajax_request()) {
        exit('No direct script access allowed');
    }else{
        $this->load->library('datatables_ssp');
        $table = 'barang';
        $primaryKey = 'barang_id';

        $columns = array(
            array( 'db' => 'barang_id', 'dt' => 'DT_RowID' ),               
            array( 'db' => 'barang_kode', 'dt' => 'barang_kode' ),
            array( 'db' => 'barang_type', 'dt' => 'barang_type' ),
            array( 'db' => 'barang_size', 'dt' => 'barang_size' ),
            array( 'db' => 'barang_qty', 'dt' => 'barang_qty'), //I want this field result from summation of barang_qty and barang_qty_toko
            array( 'db' => 'barang_harga', 'dt' => 'barang_harga' ),
            array( 'db' => 'barang_klasifikasi', 'dt' => 'barang_klasifikasi'),

        );

        $sql_details = array(
            'user'  => 'user',
            'pass'  => 'passwd',
            'db'    => 'pjtomato',
            'host'  => 'localhost'
        );

        $where = "";

        echo json_encode(Datatables_ssp::simple($_GET, $sql_details, $table, $primaryKey, $columns, $where));
    }
}

And this is my view :

<div role="tabpanel" class="tab-pane fade in active" id="tab-all">
<table id="tableAllItem" class="table table-bordered table-striped table-hover" cellspacing="0" width="100%">
    <thead>
        <tr class="info">
            <th>#</th>
            <th>Kode</th>
            <th>Jenis</th>
            <th>Ukuran</th>
            <th>Quantity</th> // Total of quantity (summation of barang_qty + barang_qty_toko) will display here
            <th>Harga</th>
            <th>Klasifikasi</th>
        </tr>
    </thead>
</table>

And this is the javascript for datatables:

<script type="text/javascript">
$.fn.dataTableExt.oApi.fnPagingInfo = function (oSettings){
    return{
        "iStart": oSettings._iDisplayStart,
        "iEnd": oSettings.fnDisplayEnd(),
        "iLength": oSettings._iDisplayLength,
        "iTotal": oSettings.fnRecordsTotal(),
        "iFilteredTotal": oSettings.fnRecordsDisplay(),
        "iPage": Math.ceil(oSettings._iDisplayStart / oSettings._iDisplayLength),
        "iTotalPages": Math.ceil(oSettings.fnRecordsDisplay() / oSettings._iDisplayLength)
    };
};

var t = $('#tableAllItem').DataTable({
    "processing": true,
    "serverSide": true,
    "ajax": "<?php echo site_url('cAdminPage/ajax_tableBarang'); ?>",
    "columns": [
    { "data": "barang_kode" },
    { "data": "barang_kode" },
    { "data": "barang_type" },     
    { "data": "barang_size" },
    { "data": "barang_qty"},
    { "data": "barang_harga" },
    { "data": "barang_klasifikasi" },
    ],

    "order": [[1, 'asc']],
    "rowCallback": function (row, data, iDisplayIndex){
        var info = this.fnPagingInfo();
        var page = info.iPage;
        var length = info.iLength;
        var index = page * length + (iDisplayIndex + 1);
        $('td:eq(0)', row).html(index);
    }
});

Please advice, Thanks

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?
    • ¥15 c++头文件不能识别CDialog
    • ¥15 Excel发现不可读取的内容
    • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
    • ¥20 yolov5自定义Prune报错,如何解决?
    • ¥15 电磁场的matlab仿真