41 lines
1.7 KiB
PHP
41 lines
1.7 KiB
PHP
<?php
|
|
// Koneksi ke database
|
|
include '../config/connect.php';
|
|
|
|
// Pastikan input yang diterima dari GET aman
|
|
$id_data_server = isset($_GET['id']) ? intval($_GET['id']) : 0;
|
|
$generate_time = isset($_GET['tgl']) ? $_GET['tgl'] : '';
|
|
|
|
// Memastikan nilai yang diterima valid dan menghindari SQL injection
|
|
if ($id_data_server > 0 && !empty($generate_time)) {
|
|
$data_akumulasi = [];
|
|
// Query yang lebih aman menggunakan prepared statements
|
|
$stmt = $pdo->prepare("SELECT generate_time,
|
|
SUM(debet) as total_debet,
|
|
SUM(kredit) as total_kredit,
|
|
SUM(saldo) as total_saldo,
|
|
SUM(jumlah_voucher) as total_voucher,
|
|
SUM(jumlah_voucher_belum_aktif) as total_belum_aktif,
|
|
SUM(jumlah_voucher_aktif) as total_aktif,
|
|
SUM(jumlah_voucher_expaired) as total_expaired
|
|
FROM v_detail_agen_pascabayar
|
|
WHERE id_data_server = :id_data_server AND generate_time = :generate_time");
|
|
|
|
$stmt->bindValue(':id_data_server', $id_data_server, PDO::PARAM_INT);
|
|
$stmt->bindValue(':generate_time', $generate_time, PDO::PARAM_STR);
|
|
|
|
$stmt->execute();
|
|
|
|
// Mengambil hasil query dan menyimpannya dalam array
|
|
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
|
$data_akumulasi[] = $row;
|
|
}
|
|
|
|
// Mengatur header untuk output JSON
|
|
header('Content-Type: application/json');
|
|
echo json_encode($data_akumulasi);
|
|
} else {
|
|
echo json_encode(['error' => 'Invalid parameters']);
|
|
}
|
|
?>
|