first commit

This commit is contained in:
2026-06-11 21:15:09 +07:00
commit 9cc3c343ac
16 changed files with 1822 additions and 0 deletions
File diff suppressed because one or more lines are too long
+17
View File
@@ -0,0 +1,17 @@
<?php
include 'koneksi.php';
// Query ambil semua data
$query = "SELECT * FROM spbu";
$result = mysqli_query($conn, $query);
$data = [];
while($row = mysqli_fetch_assoc($result)){
$data[] = $row;
}
// Kirim dalam format JSON
header('Content-Type: application/json');
echo json_encode($data);
?>
+12
View File
@@ -0,0 +1,12 @@
<?php
include 'koneksi.php';
$data = [];
$q = mysqli_query($conn, "SELECT * FROM jalan");
while($row = mysqli_fetch_assoc($q)){
$data[] = $row;
}
echo json_encode($data);
?>
+12
View File
@@ -0,0 +1,12 @@
<?php
include 'koneksi.php';
$data = [];
$q = mysqli_query($conn, "SELECT * FROM parsil");
while($row = mysqli_fetch_assoc($q)){
$data[] = $row;
}
echo json_encode($data);
?>
+13
View File
@@ -0,0 +1,13 @@
<?php
include 'koneksi.php';
$id = $_POST['id'];
$query = "DELETE FROM spbu WHERE id='$id'";
if(mysqli_query($conn, $query)){
echo "success";
}else{
echo "error";
}
?>
+5
View File
@@ -0,0 +1,5 @@
<?php
include 'koneksi.php';
$id = $_POST['id'];
mysqli_query($conn, "DELETE FROM jalan WHERE id='$id'");
?>
+5
View File
@@ -0,0 +1,5 @@
<?php
include 'koneksi.php';
$id = $_POST['id'];
mysqli_query($conn, "DELETE FROM parsil WHERE id='$id'");
?>
+1458
View File
File diff suppressed because it is too large Load Diff
+32
View File
@@ -0,0 +1,32 @@
<?php
$db_host = getenv('DB_HOST') ?: 'db';
$db_user = getenv('DB_USER') ?: 'root';
$db_pass = getenv('DB_PASS') ?: 'root';
$db_name = getenv('DB_NAME_SPBU') ?: 'webgis';
$conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if (!$conn) {
die("Koneksi gagal: " . mysqli_connect_error());
}
// Auto-create tabel jalan jika belum ada
mysqli_query($conn, "CREATE TABLE IF NOT EXISTS `jalan` (
`id` int NOT NULL AUTO_INCREMENT,
`nama_jalan` varchar(150) NOT NULL,
`status_jalan` enum('Nasional','Provinsi','Kabupaten') DEFAULT 'Nasional',
`panjang` double DEFAULT 0,
`geom` longtext,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
// Auto-create tabel parsil jika belum ada
mysqli_query($conn, "CREATE TABLE IF NOT EXISTS `parsil` (
`id` int NOT NULL AUTO_INCREMENT,
`nama_pemilik` varchar(150) NOT NULL,
`status` enum('SHM','HGB','HGU','HP') DEFAULT 'SHM',
`luas` double DEFAULT 0,
`geom` longtext,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
?>
+87
View File
@@ -0,0 +1,87 @@
<?php
// ==============================================================
// setup_tables.php — Fix & buat semua tabel di database webgis
// HAPUS FILE INI SETELAH DIGUNAKAN!
// ==============================================================
$host = getenv('DB_HOST') ?: 'db';
$user = getenv('DB_USER') ?: 'root';
$pass = getenv('DB_PASS') ?: 'root';
$db = getenv('DB_NAME_SPBU') ?: 'webgis';
$conn = mysqli_connect($host, $user, $pass, $db);
if (!$conn) die('<p style="color:red">Koneksi gagal: ' . mysqli_connect_error() . '</p>');
echo '<style>body{font-family:monospace;background:#0b1120;color:#e0e6f0;padding:20px}.ok{color:#00c9aa}.err{color:#f03e5a}.info{color:#f59e0b}.warn{color:#fb923c}h2,h3{color:#1a5fff}</style>';
echo '<h2>🛠️ Fix & Setup Tabel WebGIS SPBU</h2>';
// ── 1. SPBU table ──────────────────────────────────────────────
echo '<h3>📌 Tabel: spbu</h3>';
mysqli_query($conn, "CREATE TABLE IF NOT EXISTS `spbu` (
`id` int NOT NULL AUTO_INCREMENT,
`nama_spbu` varchar(100) DEFAULT NULL,
`no_wa` varchar(20) DEFAULT NULL,
`buka_24jam` enum('Ya','Tidak') DEFAULT 'Tidak',
`latitude` double DEFAULT NULL,
`longitude` double DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
echo "<p class='ok'>✅ Tabel spbu OK.</p>";
// ── 2. JALAN table — drop & recreate (pasti schema benar) ──────
echo '<h3>📌 Tabel: jalan</h3>';
// Cek jumlah data dulu
$cntR = mysqli_query($conn, "SELECT COUNT(*) as c FROM jalan");
$cnt = $cntR ? mysqli_fetch_assoc($cntR)['c'] : 0;
echo "<p class='info'>️ Data jalan saat ini: <b>$cnt</b> record.</p>";
// Drop dan recreate karena schema mungkin salah
mysqli_query($conn, "DROP TABLE IF EXISTS `jalan`");
$r = mysqli_query($conn, "CREATE TABLE `jalan` (
`id` int NOT NULL AUTO_INCREMENT,
`nama_jalan` varchar(150) NOT NULL,
`status_jalan` enum('Nasional','Provinsi','Kabupaten') DEFAULT 'Nasional',
`panjang` double DEFAULT 0,
`geom` longtext,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
if ($r) {
echo "<p class='ok'>✅ Tabel jalan di-recreate dengan schema yang benar (status_jalan ✓).</p>";
} else {
echo "<p class='err'>❌ Error: " . mysqli_error($conn) . "</p>";
}
// ── 3. PARSIL table — drop & recreate ──────────────────────────
echo '<h3>📌 Tabel: parsil</h3>';
$cntR2 = mysqli_query($conn, "SELECT COUNT(*) as c FROM parsil");
$cnt2 = $cntR2 ? mysqli_fetch_assoc($cntR2)['c'] : 0;
echo "<p class='info'>️ Data parsil saat ini: <b>$cnt2</b> record.</p>";
mysqli_query($conn, "DROP TABLE IF EXISTS `parsil`");
$r2 = mysqli_query($conn, "CREATE TABLE `parsil` (
`id` int NOT NULL AUTO_INCREMENT,
`nama_pemilik` varchar(150) NOT NULL,
`status` enum('SHM','HGB','HGU','HP') DEFAULT 'SHM',
`luas` double DEFAULT 0,
`geom` longtext,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
if ($r2) {
echo "<p class='ok'>✅ Tabel parsil di-recreate dengan schema yang benar.</p>";
} else {
echo "<p class='err'>❌ Error: " . mysqli_error($conn) . "</p>";
}
// ── Verifikasi kolom ────────────────────────────────────────────
echo '<hr style="border-color:#2d3449;margin:20px 0">';
echo '<h3>🔍 Verifikasi Kolom Tabel Jalan:</h3>';
$cols = mysqli_query($conn, "SHOW COLUMNS FROM jalan");
while ($col = mysqli_fetch_assoc($cols)) {
echo "<p class='ok'> ✓ {$col['Field']} ({$col['Type']})</p>";
}
echo '<hr style="border-color:#2d3449;margin:20px 0">';
echo '<h3 style="color:#00c9aa">🎉 Fix selesai! Sekarang coba Tambah Jalan lagi.</h3>';
echo '<p style="color:#f03e5a"><b>⚠️ Hapus file ini setelah selesai!</b></p>';
echo '<p>→ <a href="/spbu/index.php" style="color:#1a5fff">Kembali ke SPBU Dashboard</a></p>';
mysqli_close($conn);
?>
+17
View File
@@ -0,0 +1,17 @@
<?php
include 'koneksi.php';
$nama = mysqli_real_escape_string($conn, $_POST['nama_spbu'] ?? '');
$wa = mysqli_real_escape_string($conn, $_POST['no_wa'] ?? '');
$buka = mysqli_real_escape_string($conn, $_POST['buka_24jam'] ?? 'Tidak');
$lat = (float)($_POST['latitude'] ?? 0);
$lng = (float)($_POST['longitude'] ?? 0);
$result = mysqli_query($conn, "INSERT INTO spbu (nama_spbu, no_wa, buka_24jam, latitude, longitude) VALUES ('$nama','$wa','$buka','$lat','$lng')");
if ($result) {
echo 'success';
} else {
echo 'error: ' . mysqli_error($conn);
}
?>
+16
View File
@@ -0,0 +1,16 @@
<?php
include 'koneksi.php';
$nama = mysqli_real_escape_string($conn, $_POST['nama_jalan'] ?? '');
$status = mysqli_real_escape_string($conn, $_POST['status_jalan'] ?? '');
$panjang = (float)($_POST['panjang'] ?? 0);
$geom = $_POST['geom'] ?? '';
$result = mysqli_query($conn, "INSERT INTO jalan (nama_jalan, status_jalan, panjang, geom) VALUES ('$nama','$status','$panjang','$geom')");
if ($result) {
echo 'success';
} else {
echo 'error: ' . mysqli_error($conn);
}
?>
+16
View File
@@ -0,0 +1,16 @@
<?php
include 'koneksi.php';
$nama = mysqli_real_escape_string($conn, $_POST['nama_pemilik'] ?? '');
$status = mysqli_real_escape_string($conn, $_POST['status'] ?? '');
$luas = (float)($_POST['luas'] ?? 0);
$geom = $_POST['geom'] ?? '';
$result = mysqli_query($conn, "INSERT INTO parsil (nama_pemilik, status, luas, geom) VALUES ('$nama','$status','$luas','$geom')");
if ($result) {
echo 'success';
} else {
echo 'error: ' . mysqli_error($conn);
}
?>
+27
View File
@@ -0,0 +1,27 @@
<?php
include 'koneksi.php';
$id = $_POST['id'];
$type = isset($_POST['type']) ? $_POST['type'] : 'spbu';
if ($type === 'spbu') {
$nama = $_POST['nama_spbu'];
$wa = $_POST['no_wa'];
$buka = $_POST['buka_24jam'];
$query = "UPDATE spbu SET nama_spbu='$nama', no_wa='$wa', buka_24jam='$buka' WHERE id='$id'";
} elseif ($type === 'jalan') {
$nama = $_POST['nama_jalan'];
$status = $_POST['status_jalan'];
$query = "UPDATE jalan SET nama_jalan='$nama', status_jalan='$status' WHERE id='$id'";
} else {
$nama = $_POST['nama_pemilik'];
$status = $_POST['status'];
$query = "UPDATE parsil SET nama_pemilik='$nama', status='$status' WHERE id='$id'";
}
if(mysqli_query($conn, $query)){
echo "success";
}else{
echo "error";
}
?>
+26
View File
@@ -0,0 +1,26 @@
<?php
include 'koneksi.php';
$id = $_POST['id'];
$type = isset($_POST['type']) ? $_POST['type'] : 'spbu';
if ($type === 'spbu') {
$lat = $_POST['latitude'];
$lng = $_POST['longitude'];
$query = "UPDATE spbu SET latitude='$lat', longitude='$lng' WHERE id='$id'";
} elseif ($type === 'jalan') {
$geom = $_POST['geom'];
$panjang = $_POST['panjang'];
$query = "UPDATE jalan SET geom='$geom', panjang='$panjang' WHERE id='$id'";
} else {
$geom = $_POST['geom'];
$luas = $_POST['luas'];
$query = "UPDATE parsil SET geom='$geom', luas='$luas' WHERE id='$id'";
}
if(mysqli_query($conn, $query)){
echo "success";
}else{
echo "error";
}
?>
+71
View File
@@ -0,0 +1,71 @@
-- phpMyAdmin SQL Dump
-- version 6.0.0-dev+20260306.2f4a40d208
-- https://www.phpmyadmin.net/
--
-- Host: localhost:3306
-- Generation Time: Apr 06, 2026 at 07:08 AM
-- Server version: 8.4.3
-- PHP Version: 8.3.30
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Database: `webgis`
--
-- --------------------------------------------------------
--
-- Table structure for table `spbu`
--
CREATE TABLE `spbu` (
`id` int NOT NULL,
`nama_spbu` varchar(100) DEFAULT NULL,
`no_wa` varchar(20) DEFAULT NULL,
`buka_24jam` enum('Ya','Tidak') DEFAULT NULL,
`latitude` double DEFAULT NULL,
`longitude` double DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
--
-- Dumping data for table `spbu`
--
INSERT INTO `spbu` (`id`, `nama_spbu`, `no_wa`, `buka_24jam`, `latitude`, `longitude`) VALUES
(1, 'SPBU TanjungPura', '12345678', 'Ya', -0.028881894870255782, 109.3369621038437),
(2, 'SPBU tak tau', '1111111', 'Ya', -0.019509077149319303, 109.33181762695314),
(3, 'SPBU TanjungPura', '1111', 'Tidak', -0.027379988581930446, 109.34041678905488);
--
-- Indexes for dumped tables
--
--
-- Indexes for table `spbu`
--
ALTER TABLE `spbu`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `spbu`
--
ALTER TABLE `spbu`
MODIFY `id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;