Hallo teman-teman Dumet School, kembali lagi dengan saya Shelli Ripati. Pada kesempatan kali ini saya akan membahas tentang cara Menjumlahkan Data Pada Datatable menggunakan PHP. Sebelum memulai scriptnya teman-teman pastikan terlebih dahulu sudah menyediakan data yang disimpan di database untuk menampilkan ke dalam sebuah tabel.

Langkah pertama teman-teman buat struktur html terlebih dahulu seperti di bawah ini. Lalu simpan dengan nama index.php.

<html>
<head>
<title>Menjumlahkan Data Pada Datatable menggunakan PHP</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
  <script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
  <script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>  
  <link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css" />
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container box">
<h3 align="center">Menjumlahkan Data Pada Datatable menggunakan PHP</h3>
<br />
<div class="table-responsive">
<table id="order_data" class="table table-bordered table-striped">
<thead>
<tr>
<th>Kode Produk</th>
<th>Nama Produk</th>
<th>Harga</th>
<th>Stok</th>
</tr>
</thead>
<tbody></tbody>
<tfoot>
<tr>
<th colspan="3">Total</th>
<th id="total_order"></th>
</tr>
</tfoot>
</table>
</div>
</div>
</body>
</html>

Dan jika sudah maka tahap selanjutnya masih didalam file index.php kita akan membuat script untuk menampilkan data ke dalam datatable seperti script di bawah ini.

$(document).ready(function(){
var dataTable = $('#order_data').DataTable({
"processing" : true,
"serverSide" : true,
"order" : [],
"ajax" : {
url:"fetch.php",
type:"POST"
},
drawCallback:function(settings)
{
$('#total_order').html(settings.json.total);
}
});
});

Dan tahap terakhir kita akan membuat perintah php didalam file baru yaitu fetch.php untuk mengambil data serta menjumlahkan data stok untuk ditampilkan juga kedalam datatable seperti berikut ini.

<?php

$connect = new PDO("mysql:host=localhost;dbname=test", "dumet", "school");
$column = array('kode_produk', 'nama_produk', 'harga_jual', 'stok');

$query = '
SELECT * FROM produk 
WHERE kode_produk LIKE "%'.$_POST["search"]["value"].'%" 
OR nama_produk LIKE "%'.$_POST["search"]["value"].'%" 
OR harga_jual LIKE "%'.$_POST["search"]["value"].'%" 
OR stok LIKE "%'.$_POST["search"]["value"].'%" 
';

if(isset($_POST["order"])){
 $query .= 'ORDER BY '.$column[$_POST['order']['0']['column']].' '.$_POST['order']['0']['dir'].' ';
}else{
 $query .= 'ORDER BY id DESC ';
}

$query1 = '';

if($_POST["length"] != -1){
 $query1 = 'LIMIT ' . $_POST['start'] . ', ' . $_POST['length'];
}

$statement = $connect->prepare($query);
$statement->execute();
$number_filter_row = $statement->rowCount();
$statement = $connect->prepare($query . $query1);
$statement->execute();
$result = $statement->fetchAll();
$data = array();
$total_order = 0;

foreach($result as $row){
 $sub_array = array();
 $sub_array[] = $row["kode_produk"];
 $sub_array[] = $row["nama_produk"];
 $sub_array[] = $row["harga_jual"];
 $sub_array[] = $row["stok"];
 $total_order = $total_order + floatval($row["stok"]);
 $data[] = $sub_array;
}

function count_all_data($connect){
 $query = "SELECT * FROM produk";
 $statement = $connect->prepare($query);
 $statement->execute();
 return $statement->rowCount();
}

$output = array(
 'draw'    => intval($_POST["draw"]),
 'recordsTotal'  => count_all_data($connect),
 'recordsFiltered' => $number_filter_row,
 'data'    => $data,
 'total'    => number_format($total_order, 2)
);

echo json_encode($output);


?>

Jika sudah maka akan seperti pada gambar di bawah ini.

Menjumlahkan Data Pada Datatable menggunakan PHP

Demikian artikel tentang cara Menjumlahkan Data Pada Datatable menggunakan PHP. Semoga dapat bermanfaat dan selamat mencoba.