Files
2026-06-13 13:56:43 +07:00

52 lines
1.9 KiB
PHP

<?php
if (!defined('DB_HOST')) {
$cfg = __DIR__ . '/config.php';
if (file_exists($cfg)) require_once $cfg;
}
$host = defined('DB_HOST') ? DB_HOST : (getenv('DB_HOST') ?: '127.0.0.1');
$user = defined('DB_USER') ? DB_USER : (getenv('DB_USER') ?: 'root');
$pass = defined('DB_PASS') ? DB_PASS : (getenv('DB_PASS') ?: '');
$name = defined('DB_NAME') ? DB_NAME : (getenv('DB_NAME') ?: 'db_webgis');
$port = defined('DB_PORT') ? (int)DB_PORT : (int)(getenv('DB_PORT') ?: 3306);
$conn = mysqli_connect($host, $user, $pass, $name, $port);
if (!$conn) {
die(json_encode(['status' => 'error', 'message' => 'Koneksi database gagal: ' . mysqli_connect_error()]));
}
mysqli_set_charset($conn, 'utf8mb4');
if (!isset($GLOBALS['tugas_setup'])) {
$GLOBALS['tugas_setup'] = true;
$conn->query("CREATE TABLE IF NOT EXISTS spbu (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(255) NOT NULL,
nomor VARCHAR(50),
status_24jam ENUM('Ya','Tidak') DEFAULT 'Tidak',
lat DECIMAL(10,7) NOT NULL,
lng DECIMAL(10,7) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)");
$conn->query("CREATE TABLE IF NOT EXISTS jalan (
id INT AUTO_INCREMENT PRIMARY KEY,
nama_jalan VARCHAR(255) NOT NULL,
status_jalan VARCHAR(100),
panjang_m DECIMAL(10,2),
geojson TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)");
$conn->query("CREATE TABLE IF NOT EXISTS persil (
id INT AUTO_INCREMENT PRIMARY KEY,
nomor_persil VARCHAR(100),
status_milik VARCHAR(100),
luas_m2 DECIMAL(10,2),
geojson TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)");
$conn->query("CREATE TABLE IF NOT EXISTS wilayah (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(255),
tipe VARCHAR(100),
geojson TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)");
}