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.
Demikian artikel tentang cara Menjumlahkan Data Pada Datatable menggunakan PHP. Semoga dapat bermanfaat dan selamat mencoba.