Source Code Aplikasi Moving Average PHP MySQL PDO

Source Code Aplikasi Moving Average PHP MySQL PDO - Jumpa lagi teman-teman, pada kesempatan ini kita akan membuat aplikasi sederhana berbasis PHP dan MySQL PDO, yang digunakan untuk peramalan atau estimasi penjualan dengan periode waktu yang ditentukan. 

Seperti pada postingan sebelumnya telah kita bahas tentang tugas akhir penerapan metode moving average dengan contoh soal dan penyelesaiannya.

Peramalan atau biasa disebut forecasting di dunia bisnis sangat berperan penting. Forecasting dapat digunakan untuk memperkirakan jumlah (volume) penjualan, biaya produksi dan lain sebagainya. Hasil akhir dari forecasting akan dijadikan dasar pengambilan keputuasan bagi perusahan untuk melakukan perencanaan produksi jangka pendek maupun jangka panjang dengan menghitung jumlah biaya yang dikeluarkan pada sebuah produk.

Data yang digunakan dalam aplikasi ini yaitu data eskpor kopi pada bulan Januari sampai September dan kita akan perkirakan ekspor kopi dibulan berikutnya (bulan November). 

Langkah Pertama

Buka aplikasi Xampp, klik start pada Apche dan MySQL seperti pada gambar di bawah ini:

Langkah Kedua

1.  Buat database dengan nama db_metode :
CREATE DATABASE ‘db_metode’
2.  Buat table dengan nama tb_movingaverage:
CREATE TABLE `tb_movingaverage` (
  `id` int(11) NOT NULL,
  `dt` date NOT NULL,
  `bulan` varchar(100) NOT NULL,
  `qty` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
3.  Tambahkan data di dalam table:
INSERT INTO `tb_movingaverage` (`id`, `dt`, `bulan`, `qty`) VALUES
(1, '2020-11-01', 'Januari', 245),
(2, '2020-11-02', 'Februari', 278),
(3, '2020-11-03', 'Maret', 234),
(4, '2020-11-04', 'April', 278),
(5, '2020-11-05', 'Mei', 265),
(6, '2020-11-06', 'Juni', 287),
(7, '2020-11-07', 'Juli', 246),
(8, '2020-11-08', 'Agustus', 245),
(9, '2020-11-09', 'September', 222);

Langkah Ketiga

Buat folder dengan nama moving_average di Local Disk (C) -> xammp -> htdocs

Struktur Folder

Di dalam folder moving_average ada folder assets yang berisi file bootstrap

Langkah Keempat

Buka aplikasi editor kesayangan teman-teman, misalnya sublime ataupun notepad++

Aplikasi Sublime

Aplikasi Notepad++

Langkah Kelima

Buat file koneksi database seperti di bawah ini dan disimpan dengan nama connect.php

<?php
$connect= new PDO("mysql:host=localhost; dbname=db_metode; charset=utf8mb4", "root", "");
date_default_timezone_set('Asia/Makassar');
define('APP_NAME', 'MA', true);
define('APP_DESC', 'Moving Average');
define('APP_COPYRIGHT', '&copy; '.APP_NAME.' - All Right Reserved 2020');
define('BASEURL', 'http://localhost/moving_average/');
?>

Langkah Keenam

Buat file index yang berisi kode interface (tampilan antarmuka) aplikasi dan kode proses perhitungan metode moving average, disimpan dengan nama index.php

<?php 
include 'connect.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>Moving Average</title>
<link rel="stylesheet" type="text/css" href="assets/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-12">
<p>
<center><strong>ESTIMASI PENJUALAN MENGGUNAKAN METODE MOVING AVERAGE</strong></center>
</p>
</div>
</div>
<div class="row">
<div class="col-md-4">
<table class="table table striped">
<thead>
<tr>
<th>ID</th>
<th>Bulan</th>
<th>Penjualan</th>
</tr>
</thead>
<?php
$query = $connect->query("SELECT * from tb_movingaverage ");
$query->setFetchMode(PDO::FETCH_ASSOC);                 
while($data =$query->fetch()){      
?>
<tbody>
<tr>
<td><?php echo $data['id'];?></td>
<td><?php echo $data['bulan'];?></td>
<td><?php echo $data['qty'];?></td>
</tr>
</tbody>
<?php } ?>
</table>
<form action="" method="POST">
<button type="submit" name="proses" class="btn btn-primary">Proses</button>
</form>
</div>
<div class="col-md-8">
<div class="card">
<h5 class="card-header">Hasil Perhitungan</h5>
<div class="card-body">
<?php 
if (isset($_REQUEST['proses'])) {
?>
<div class="row">
<div class="col-md-4">
<table class="table">
<thead>
<tr>  
<th>Bulan</th>
<th>Penjualan</th>
</tr>
</thead>
<?php
$query = $connect->query("SELECT * from tb_movingaverage LIMIT 3,9");
$query->setFetchMode(PDO::FETCH_ASSOC);                 
while($data =$query->fetch()){      
?>
<tbody>
<tr>  
<td><?php echo $data['bulan'];?></td>
<td><?php echo $data['qty'];?></td>
</tr>
</tbody>
<?php } ?>
</table>
</div>  
<div class="col-md-4">
<?php
$query=$connect->query("SELECT a.dt, id, bulan, a.qty, Round( ( SELECT SUM(b.qty) / COUNT(b.qty) FROM tb_movingaverage AS b WHERE DATEDIFF(a.dt, b.dt) BETWEEN 0 AND 2), 1 ) AS '5dayMovingAvg' FROM tb_movingaverage AS a ORDER BY a.dt LIMIT 8,9")->fetch(PDO::FETCH_ASSOC);
$hasil=$query['5dayMovingAvg'];
?>
<table class="table table striped">
<thead>
<th>MA</th>
</thead>
<?php
$ma= $connect->query("SELECT a.dt, id, bulan, a.qty, Round( ( SELECT SUM(b.qty) / COUNT(b.qty) FROM tb_movingaverage AS b WHERE DATEDIFF(a.dt, b.dt) BETWEEN 0 AND 2), 1 ) AS '5dayMovingAvg' FROM tb_movingaverage AS a ORDER BY a.dt LIMIT 2,9");
$ma->setFetchMode(PDO::FETCH_ASSOC);                 
while($data =$ma->fetch()){      
?>
<tbody>
<tr>
<td><?php echo $data['5dayMovingAvg'];?></td>
</tr>
</tbody>
<?php } ?>
</table>
<hr>
Hasil estimasi penjualan pada bulan November adalah : <b><?php echo $hasil?></b
</div>
</div>
<?php
}
?>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="assets/js/bootstrap.min.js"></script>
</body>
</html>

Langkah Ketujuh

Buka browser teman-teman dan coba jalankan aplikasinya, maka akan tampak seperti berikut:

Silahkan tekan tombol Proses, maka hasilnya seperti gambar di bawah ini:

Demikian tutorial membuat Source Code Aplikasi Moving Average PHP MySQL PDO

Terimakasih sudah berkunjung di blog kami, semoga bermanfaat. Jika ada pertanyaan dari teman-teman, silahkan sampaikan pada kolom komentar atau bisa langsung hubungi pada kontak yang sudah kami lampirkan di menu Contact Us.

Comments