Upload files to "/"

This commit is contained in:
2026-06-10 09:50:45 +00:00
parent a6a007967e
commit b2294fc5ee
5 changed files with 170 additions and 14 deletions
+19 -14
View File
@@ -1,26 +1,33 @@
<?php
// koneksi.php
session_start();
// koneksi.php - versi deploy Coolify
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
$host = getenv('DB_HOST') ?: 'localhost';
$user = getenv('DB_USER') ?: 'root';
$pass = getenv('DB_PASS') ?: (getenv('DB_PASSWORD') ?: '');
$db = getenv('DB_NAME') ?: 'db_bantuan';
$port = (int)(getenv('DB_PORT') ?: 3306);
$host = getenv('DB_HOST');
$user = getenv('DB_USER');
$pass = getenv('DB_PASSWORD');
$db = getenv('DB_NAME');
define('APP_NAME', 'WebGIS Poverty Mapping');
define('APP_VERSION', '2.0');
$conn = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$conn = new mysqli($host, $user, $pass, $db, $port);
if ($conn->connect_error) {
die(json_encode(['status'=>'error','message'=>'Koneksi DB gagal: '.$conn->connect_error]));
die(json_encode([
'status' => 'error',
'message' => 'Koneksi DB gagal: ' . $conn->connect_error
]));
}
$conn->set_charset('utf8mb4');
// Helper: sanitasi
function bersih($str, $conn) {
return $conn->real_escape_string(htmlspecialchars(strip_tags(trim($str))));
}
// Helper: cek login
function cekLogin() {
if (!isset($_SESSION['user_id'])) {
header('Location: login.php');
@@ -28,7 +35,6 @@ function cekLogin() {
}
}
// Helper: cek role
function cekRole(...$roles) {
if (!in_array($_SESSION['role'] ?? '', $roles)) {
header('Location: index.php?error=akses_ditolak');
@@ -36,15 +42,14 @@ function cekRole(...$roles) {
}
}
// Helper: format rupiah
function rupiah($angka) {
return 'Rp ' . number_format($angka, 0, ',', '.');
}
// Helper: usia dari tanggal lahir
function hitungUsia($tgl) {
if (!$tgl || $tgl === '0000-00-00') return '-';
$lahir = new DateTime($tgl);
$sekarang = new DateTime();
return $lahir->diff($sekarang)->y . ' th';
}
}
?>