Compare commits
10 Commits
a70150e088
...
e76e82f1f4
| Author | SHA1 | Date | |
|---|---|---|---|
| e76e82f1f4 | |||
| db38f85e6c | |||
| c274bb6c3a | |||
| f3e9c9935c | |||
| e76e1a95c9 | |||
| 524de87cb7 | |||
| afd656779f | |||
| a8349a43af | |||
| af593691b2 | |||
| bde929158b |
@@ -1,28 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
// Add kolom ke tabel kemiskinan (dengan error handling jika sudah ada)
|
|
||||||
$columns = [
|
|
||||||
"ALTER TABLE kemiskinan ADD COLUMN tanggal_lahir DATE NULL AFTER nama_kk",
|
|
||||||
"ALTER TABLE kemiskinan ADD COLUMN pendidikan VARCHAR(100) NULL AFTER tanggal_lahir",
|
|
||||||
"ALTER TABLE kemiskinan ADD COLUMN riwayat_penyakit TEXT NULL AFTER pendidikan",
|
|
||||||
];
|
|
||||||
|
|
||||||
foreach ($columns as $sql) {
|
|
||||||
$result = $conn->query($sql);
|
|
||||||
preg_match('/ADD COLUMN (\w+)/', $sql, $m);
|
|
||||||
$colName = $m[1] ?? $sql;
|
|
||||||
if ($result) {
|
|
||||||
echo "Kolom $colName: OK\n";
|
|
||||||
} else {
|
|
||||||
// Error 1060 = Duplicate column (sudah ada), tidak masalah
|
|
||||||
if ($conn->errno == 1060) {
|
|
||||||
echo "Kolom $colName: Sudah ada (skip)\n";
|
|
||||||
} else {
|
|
||||||
echo "Kolom $colName: GAGAL - " . $conn->error . "\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "\nDatabase sudah siap!\n";
|
|
||||||
?>
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
$id = isset($data['id']) ? intval($data['id']) : 0;
|
|
||||||
|
|
||||||
if ($id <= 0) {
|
|
||||||
echo json_encode(["status" => "error", "message" => "ID tidak valid"]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "DELETE FROM spbu WHERE id=$id";
|
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
|
||||||
echo json_encode(["status" => "success"]);
|
|
||||||
} else {
|
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
$id = isset($data['id']) ? intval($data['id']) : 0;
|
|
||||||
|
|
||||||
if ($id <= 0) {
|
|
||||||
echo json_encode(["status" => "error", "message" => "ID tidak valid"]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "DELETE FROM jalan WHERE id=$id";
|
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
|
||||||
echo json_encode(["status" => "success"]);
|
|
||||||
} else {
|
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
$id = isset($data['id']) ? intval($data['id']) : 0;
|
|
||||||
|
|
||||||
if ($id <= 0) {
|
|
||||||
echo json_encode(["status" => "error", "message" => "ID tidak valid"]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "DELETE FROM parsil WHERE id=$id";
|
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
|
||||||
echo json_encode(["status" => "success"]);
|
|
||||||
} else {
|
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
// Cek data user walikota
|
|
||||||
$r = $conn->query("SELECT username, nama_lengkap, role FROM users WHERE username='walikota'");
|
|
||||||
$row = $r->fetch_assoc();
|
|
||||||
echo "Data di DB:\n";
|
|
||||||
print_r($row);
|
|
||||||
|
|
||||||
// Fix: update role ke walikota jika salah
|
|
||||||
$fix = $conn->query("UPDATE users SET role='walikota' WHERE username='walikota'");
|
|
||||||
echo "\nUpdate role: " . ($fix ? "OK (affected: ".$conn->affected_rows.")" : "GAGAL - ".$conn->error) . "\n";
|
|
||||||
|
|
||||||
// Cek lagi setelah fix
|
|
||||||
$r2 = $conn->query("SELECT username, nama_lengkap, role FROM users WHERE username='walikota'");
|
|
||||||
$row2 = $r2->fetch_assoc();
|
|
||||||
echo "\nData setelah fix:\n";
|
|
||||||
print_r($row2);
|
|
||||||
?>
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$sql = "SELECT * FROM spbu";
|
|
||||||
$result = $conn->query($sql);
|
|
||||||
|
|
||||||
if (!$result) {
|
|
||||||
echo json_encode([
|
|
||||||
"status" => "error",
|
|
||||||
"message" => "Gagal membaca tabel spbu",
|
|
||||||
"detail" => $conn->error
|
|
||||||
]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$data = [];
|
|
||||||
|
|
||||||
while($row = $result->fetch_assoc()){
|
|
||||||
$data[] = $row;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo json_encode($data);
|
|
||||||
?>
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$sql = "SELECT * FROM jalan";
|
|
||||||
$result = $conn->query($sql);
|
|
||||||
|
|
||||||
if (!$result) {
|
|
||||||
echo json_encode([
|
|
||||||
"status" => "error",
|
|
||||||
"message" => "Gagal membaca tabel jalan",
|
|
||||||
"detail" => $conn->error
|
|
||||||
]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$data = [];
|
|
||||||
|
|
||||||
while($row = $result->fetch_assoc()){
|
|
||||||
$data[] = $row;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo json_encode($data);
|
|
||||||
?>
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$sql = "SELECT * FROM parsil";
|
|
||||||
$result = $conn->query($sql);
|
|
||||||
|
|
||||||
if (!$result) {
|
|
||||||
echo json_encode([
|
|
||||||
"status" => "error",
|
|
||||||
"message" => "Gagal membaca tabel parsil",
|
|
||||||
"detail" => $conn->error
|
|
||||||
]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$data = [];
|
|
||||||
|
|
||||||
while($row = $result->fetch_assoc()){
|
|
||||||
$data[] = $row;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo json_encode($data);
|
|
||||||
?>
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
|
|
||||||
$nama = $data['nama'];
|
|
||||||
$no = $data['no'];
|
|
||||||
$status = $data['status'];
|
|
||||||
$lat = $data['lat'];
|
|
||||||
$lng = $data['lng'];
|
|
||||||
|
|
||||||
$sql = "INSERT INTO spbu (nama,no,status,lat,lng)
|
|
||||||
VALUES ('$nama','$no','$status','$lat','$lng')";
|
|
||||||
|
|
||||||
if($conn->query($sql)){
|
|
||||||
echo json_encode([
|
|
||||||
"status"=>"success",
|
|
||||||
"id"=>$conn->insert_id
|
|
||||||
]);
|
|
||||||
}else{
|
|
||||||
echo json_encode(["status"=>"error"]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
|
|
||||||
$nama = $data['nama'];
|
|
||||||
$status = $data['status'];
|
|
||||||
$panjang = $data['panjang'];
|
|
||||||
$koordinatInput = $data['koordinat'] ?? [];
|
|
||||||
|
|
||||||
if (is_string($koordinatInput)) {
|
|
||||||
$decoded = json_decode($koordinatInput, true);
|
|
||||||
$koordinat = (json_last_error() === JSON_ERROR_NONE) ? json_encode($decoded) : '[]';
|
|
||||||
} else {
|
|
||||||
$koordinat = json_encode($koordinatInput);
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "INSERT INTO jalan (nama,status,panjang,koordinat)
|
|
||||||
VALUES ('$nama','$status','$panjang','$koordinat')";
|
|
||||||
|
|
||||||
if($conn->query($sql)){
|
|
||||||
echo json_encode([
|
|
||||||
"status"=>"success",
|
|
||||||
"id"=>$conn->insert_id
|
|
||||||
]);
|
|
||||||
}else{
|
|
||||||
echo json_encode([
|
|
||||||
"status"=>"error",
|
|
||||||
"error"=>$conn->error
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
|
|
||||||
$nama = $data['nama'];
|
|
||||||
$pemilik = $data['pemilik'];
|
|
||||||
$status = $data['status'];
|
|
||||||
$luas = $data['luas'];
|
|
||||||
$koordinatInput = $data['koordinat'] ?? [];
|
|
||||||
|
|
||||||
if (is_string($koordinatInput)) {
|
|
||||||
$decoded = json_decode($koordinatInput, true);
|
|
||||||
$koordinat = (json_last_error() === JSON_ERROR_NONE) ? json_encode($decoded) : '[]';
|
|
||||||
} else {
|
|
||||||
$koordinat = json_encode($koordinatInput);
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "INSERT INTO parsil
|
|
||||||
(nama, pemilik, status, luas, koordinat)
|
|
||||||
VALUES
|
|
||||||
('$nama','$pemilik','$status','$luas','$koordinat')";
|
|
||||||
|
|
||||||
if($conn->query($sql)){
|
|
||||||
echo json_encode([
|
|
||||||
"status"=>"success",
|
|
||||||
"id"=>$conn->insert_id
|
|
||||||
]);
|
|
||||||
}else{
|
|
||||||
echo json_encode([
|
|
||||||
"status"=>"error",
|
|
||||||
"message"=>$conn->error
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
CREATE DATABASE IF NOT EXISTS kemiskinan_ibadah
|
|
||||||
CHARACTER SET utf8mb4
|
|
||||||
COLLATE utf8mb4_unicode_ci;
|
|
||||||
|
|
||||||
USE kemiskinan_ibadah;
|
|
||||||
|
|
||||||
DROP TABLE IF EXISTS rumah_ibadah;
|
|
||||||
DROP TABLE IF EXISTS kemiskinan;
|
|
||||||
|
|
||||||
CREATE TABLE kemiskinan (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama_kk VARCHAR(200) NOT NULL,
|
|
||||||
jumlah_kk INT NOT NULL DEFAULT 1,
|
|
||||||
alamat TEXT NOT NULL,
|
|
||||||
lat DECIMAL(10,7) NOT NULL,
|
|
||||||
lng DECIMAL(10,7) NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
CREATE TABLE rumah_ibadah (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama_rumah_ibadah VARCHAR(200) NOT NULL,
|
|
||||||
penanggung_jawab VARCHAR(200) NOT NULL,
|
|
||||||
alamat TEXT NOT NULL,
|
|
||||||
radius INT NOT NULL DEFAULT 500,
|
|
||||||
lat DECIMAL(10,7) NOT NULL,
|
|
||||||
lng DECIMAL(10,7) NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
INSERT INTO kemiskinan (nama_kk, jumlah_kk, alamat, lat, lng) VALUES
|
|
||||||
('Siti Aminah', 4, 'Jl. Tanjung Raya II, Pontianak Timur', -0.0268500, 109.3611200),
|
|
||||||
('Budi Santoso', 5, 'Jl. Panglima Aim, Pontianak Timur', -0.0314200, 109.3553800),
|
|
||||||
('Rohani', 3, 'Gg. Karya Bakti, Pontianak Kota', -0.0226400, 109.3337600),
|
|
||||||
('M. Yusuf', 6, 'Jl. Kom Yos Sudarso, Pontianak Barat', -0.0149800, 109.3079200),
|
|
||||||
('Nurhayati', 2, 'Jl. Imam Bonjol, Pontianak Selatan', -0.0412200, 109.3420600),
|
|
||||||
('Hendra Saputra', 4, 'Jl. Parit H. Husin II, Pontianak Tenggara', -0.0556100, 109.3659200),
|
|
||||||
('Ramlah', 5, 'Jl. Gusti Situt Mahmud, Pontianak Utara', 0.0021400, 109.3288800),
|
|
||||||
('Agus Salim', 3, 'Jl. Sungai Raya Dalam, Pontianak Tenggara', -0.0614600, 109.3785400);
|
|
||||||
|
|
||||||
INSERT INTO rumah_ibadah (nama_rumah_ibadah, penanggung_jawab, alamat, radius, lat, lng) VALUES
|
|
||||||
('Masjid Raya Mujahidin', 'H. Ahmad Fauzi', 'Jl. Jenderal Ahmad Yani, Pontianak', 800, -0.0446400, 109.3369800),
|
|
||||||
('Gereja Katedral Santo Yosef', 'Pastor Markus', 'Jl. Pattimura, Pontianak Kota', 650, -0.0241300, 109.3374500),
|
|
||||||
('Vihara Bodhisatva Karaniya Metta', 'Lina Wijaya', 'Jl. Sultan Muhammad, Pontianak Kota', 500, -0.0212600, 109.3413400),
|
|
||||||
('Masjid Jami Sultan Syarif Abdurrahman', 'H. Sulaiman', 'Kampung Beting, Pontianak Timur', 700, -0.0264100, 109.3567600),
|
|
||||||
('Gereja HKBP Pontianak', 'St. Daniel Simanjuntak', 'Jl. Gajah Mada, Pontianak Selatan', 550, -0.0356200, 109.3459600),
|
|
||||||
('Pura Giripati Mulawarman', 'I Wayan Sudana', 'Jl. Adi Sucipto, Pontianak Tenggara', 500, -0.0643600, 109.3774200);
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
<?php
|
|
||||||
// Script ini hanya dijalankan SEKALI untuk membuat tabel users dan akun admin default.
|
|
||||||
// Hapus file ini setelah selesai dijalankan.
|
|
||||||
|
|
||||||
require_once 'db_config.php';
|
|
||||||
|
|
||||||
// 1. Buat tabel users
|
|
||||||
$sql_table = "CREATE TABLE IF NOT EXISTS users (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
username VARCHAR(100) NOT NULL UNIQUE,
|
|
||||||
password VARCHAR(255) NOT NULL,
|
|
||||||
nama_lengkap VARCHAR(200) NOT NULL,
|
|
||||||
role ENUM('admin','operator') NOT NULL DEFAULT 'operator',
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4";
|
|
||||||
|
|
||||||
if ($conn->query($sql_table)) {
|
|
||||||
echo "<p style='color:green'>✓ Tabel <strong>users</strong> berhasil dibuat.</p>";
|
|
||||||
} else {
|
|
||||||
echo "<p style='color:red'>✗ Gagal membuat tabel users: " . $conn->error . "</p>";
|
|
||||||
}
|
|
||||||
|
|
||||||
// 2. Insert akun admin default (password: admin123)
|
|
||||||
$password_hash = password_hash('admin123', PASSWORD_BCRYPT);
|
|
||||||
|
|
||||||
$stmt = $conn->prepare("INSERT IGNORE INTO users (username, password, nama_lengkap, role) VALUES (?, ?, ?, 'admin')");
|
|
||||||
$username = 'admin';
|
|
||||||
$nama = 'Administrator';
|
|
||||||
$stmt->bind_param('sss', $username, $password_hash, $nama);
|
|
||||||
|
|
||||||
if ($stmt->execute()) {
|
|
||||||
if ($stmt->affected_rows > 0) {
|
|
||||||
echo "<p style='color:green'>✓ Akun admin berhasil dibuat.</p>";
|
|
||||||
} else {
|
|
||||||
echo "<p style='color:orange'>⚠ Akun admin sudah ada (tidak diubah).</p>";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
echo "<p style='color:red'>✗ Gagal membuat akun admin: " . $stmt->error . "</p>";
|
|
||||||
}
|
|
||||||
|
|
||||||
$stmt->close();
|
|
||||||
$conn->close();
|
|
||||||
|
|
||||||
echo "<hr>";
|
|
||||||
echo "<p><strong>Kredensial Login:</strong></p>";
|
|
||||||
echo "<p>Username: <code>admin</code></p>";
|
|
||||||
echo "<p>Password: <code>admin123</code></p>";
|
|
||||||
echo "<hr>";
|
|
||||||
echo "<p style='color:red'><strong>PENTING:</strong> Hapus file ini setelah setup selesai!</p>";
|
|
||||||
?>
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
USE kemiskinan_ibadah;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS users (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
username VARCHAR(100) NOT NULL UNIQUE,
|
|
||||||
password VARCHAR(255) NOT NULL,
|
|
||||||
nama_lengkap VARCHAR(200) NOT NULL,
|
|
||||||
role ENUM('admin','operator') NOT NULL DEFAULT 'operator',
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
-- Password default: admin123 (bcrypt hashed)
|
|
||||||
INSERT IGNORE INTO users (username, password, nama_lengkap, role) VALUES
|
|
||||||
('admin', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'Administrator', 'admin');
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
<?php
|
|
||||||
require_once 'db_config.php';
|
|
||||||
|
|
||||||
$sql = "
|
|
||||||
CREATE TABLE IF NOT EXISTS warga (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
kemiskinan_id INT NOT NULL,
|
|
||||||
nik VARCHAR(50) DEFAULT NULL,
|
|
||||||
nama_warga VARCHAR(200) NOT NULL,
|
|
||||||
hubungan_keluarga VARCHAR(100) DEFAULT NULL,
|
|
||||||
tanggal_lahir DATE DEFAULT NULL,
|
|
||||||
pendidikan VARCHAR(100) DEFAULT NULL,
|
|
||||||
riwayat_penyakit TEXT DEFAULT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
||||||
FOREIGN KEY (kemiskinan_id) REFERENCES kemiskinan(id) ON DELETE CASCADE
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
";
|
|
||||||
|
|
||||||
if ($conn->query($sql) === TRUE) {
|
|
||||||
echo "Table 'warga' created successfully\n";
|
|
||||||
} else {
|
|
||||||
echo "Error creating table: " . $conn->error . "\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
$conn->close();
|
|
||||||
?>
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
CREATE DATABASE IF NOT EXISTS webgis
|
|
||||||
CHARACTER SET utf8mb4
|
|
||||||
COLLATE utf8mb4_unicode_ci;
|
|
||||||
|
|
||||||
USE webgis;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS spbu (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama VARCHAR(200) NOT NULL,
|
|
||||||
no VARCHAR(60) NOT NULL,
|
|
||||||
status ENUM('Ya','Tidak') NOT NULL DEFAULT 'Tidak',
|
|
||||||
lat DECIMAL(10,7) NOT NULL,
|
|
||||||
lng DECIMAL(10,7) NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS jalan (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama VARCHAR(200) NOT NULL,
|
|
||||||
status ENUM('Nasional','Provinsi','Kabupaten') NOT NULL DEFAULT 'Kabupaten',
|
|
||||||
panjang DECIMAL(12,2) NOT NULL DEFAULT 0,
|
|
||||||
koordinat LONGTEXT NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS parsil (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama VARCHAR(200) NOT NULL,
|
|
||||||
pemilik VARCHAR(200) NOT NULL,
|
|
||||||
status ENUM('SHM','HGB','Sewa','Lainnya') NOT NULL DEFAULT 'SHM',
|
|
||||||
luas DECIMAL(14,2) NOT NULL DEFAULT 0,
|
|
||||||
koordinat LONGTEXT NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS kemiskinan (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama_kk VARCHAR(200) NOT NULL,
|
|
||||||
jumlah_kk INT NOT NULL DEFAULT 1,
|
|
||||||
alamat TEXT NOT NULL,
|
|
||||||
lat DECIMAL(10,7) NOT NULL,
|
|
||||||
lng DECIMAL(10,7) NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS masjid (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama_masjid VARCHAR(200) NOT NULL,
|
|
||||||
pic_masjid VARCHAR(200) NOT NULL,
|
|
||||||
alamat_masjid TEXT NOT NULL,
|
|
||||||
radius INT NOT NULL DEFAULT 500,
|
|
||||||
lat DECIMAL(10,7) NOT NULL,
|
|
||||||
lng DECIMAL(10,7) NOT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
|
|
||||||
$id = isset($data['id']) ? intval($data['id']) : 0;
|
|
||||||
$nama = $conn->real_escape_string($data['nama'] ?? '');
|
|
||||||
$no = $conn->real_escape_string($data['no'] ?? '');
|
|
||||||
$status = $conn->real_escape_string($data['status'] ?? 'Tidak');
|
|
||||||
$lat = isset($data['lat']) ? floatval($data['lat']) : 0;
|
|
||||||
$lng = isset($data['lng']) ? floatval($data['lng']) : 0;
|
|
||||||
|
|
||||||
if ($id <= 0 || $nama === '' || $no === '') {
|
|
||||||
echo json_encode(["status" => "error", "message" => "Data tidak valid"]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "UPDATE spbu SET nama='$nama', no='$no', status='$status', lat='$lat', lng='$lng' WHERE id=$id";
|
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
|
||||||
echo json_encode(["status" => "success"]);
|
|
||||||
} else {
|
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
USE kemiskinan_ibadah;
|
|
||||||
|
|
||||||
-- 1. Update USERS table role ENUM
|
|
||||||
ALTER TABLE users MODIFY COLUMN role ENUM('admin', 'operator', 'walikota') NOT NULL DEFAULT 'operator';
|
|
||||||
|
|
||||||
-- 2. Add walikota user (password: walikota123, hash generated previously or will generate)
|
|
||||||
-- Let's use the hash for 'walikota123': $2y$10$w6QO8q/s28pX83JgY3WvM.Hw2N2G1aN9M0iR8L7Pq4z8i5u0N72E. (Wait, let's just create a PHP script to insert to avoid hash issues)
|
|
||||||
|
|
||||||
-- 3. Modify KEMISKINAN table
|
|
||||||
ALTER TABLE kemiskinan
|
|
||||||
ADD COLUMN tanggal_lahir DATE NULL AFTER nama_kk,
|
|
||||||
ADD COLUMN pendidikan VARCHAR(100) NULL AFTER tanggal_lahir,
|
|
||||||
ADD COLUMN riwayat_penyakit TEXT NULL AFTER pendidikan;
|
|
||||||
|
|
||||||
-- 4. Create LAPORAN_MASYARAKAT table
|
|
||||||
CREATE TABLE IF NOT EXISTS laporan_masyarakat (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
nama_pelapor VARCHAR(150) NOT NULL,
|
|
||||||
kontak VARCHAR(50) NULL,
|
|
||||||
deskripsi_laporan TEXT NOT NULL,
|
|
||||||
lat DECIMAL(10,7) NOT NULL,
|
|
||||||
lng DECIMAL(10,7) NOT NULL,
|
|
||||||
foto VARCHAR(255) NULL,
|
|
||||||
status ENUM('menunggu', 'diproses', 'selesai') NOT NULL DEFAULT 'menunggu',
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
|
|
||||||
-- 5. Create HISTORI_BANTUAN table
|
|
||||||
CREATE TABLE IF NOT EXISTS histori_bantuan (
|
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
kemiskinan_id INT NOT NULL,
|
|
||||||
jenis_bantuan VARCHAR(150) NOT NULL,
|
|
||||||
tanggal DATE NOT NULL,
|
|
||||||
keterangan TEXT NULL,
|
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
||||||
FOREIGN KEY (kemiskinan_id) REFERENCES kemiskinan(id) ON DELETE CASCADE
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
|
|
||||||
$id = isset($data['id']) ? intval($data['id']) : 0;
|
|
||||||
$nama = $conn->real_escape_string($data['nama'] ?? '');
|
|
||||||
$status = $conn->real_escape_string($data['status'] ?? 'Kabupaten');
|
|
||||||
$panjang = isset($data['panjang']) ? floatval($data['panjang']) : 0;
|
|
||||||
$koordinatInput = $data['koordinat'] ?? [];
|
|
||||||
|
|
||||||
if ($id <= 0 || $nama === '') {
|
|
||||||
echo json_encode(["status" => "error", "message" => "Data tidak valid"]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_string($koordinatInput)) {
|
|
||||||
$decoded = json_decode($koordinatInput, true);
|
|
||||||
$koordinat = (json_last_error() === JSON_ERROR_NONE) ? json_encode($decoded) : '[]';
|
|
||||||
} else {
|
|
||||||
$koordinat = json_encode($koordinatInput);
|
|
||||||
}
|
|
||||||
|
|
||||||
$koordinat = $conn->real_escape_string($koordinat);
|
|
||||||
|
|
||||||
$sql = "UPDATE jalan SET nama='$nama', status='$status', panjang='$panjang', koordinat='$koordinat' WHERE id=$id";
|
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
|
||||||
echo json_encode(["status" => "success"]);
|
|
||||||
} else {
|
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
@@ -10,7 +10,6 @@ $jumlah_kk = isset($data['jumlah_kk']) ? intval($data['jumlah_kk']) :
|
|||||||
$alamat = $conn->real_escape_string($data['alamat'] ?? '');
|
$alamat = $conn->real_escape_string($data['alamat'] ?? '');
|
||||||
$lat = isset($data['lat']) ? floatval($data['lat']) : 0;
|
$lat = isset($data['lat']) ? floatval($data['lat']) : 0;
|
||||||
$lng = isset($data['lng']) ? floatval($data['lng']) : 0;
|
$lng = isset($data['lng']) ? floatval($data['lng']) : 0;
|
||||||
// Kolom baru
|
|
||||||
$tanggal_lahir = $conn->real_escape_string($data['tanggal_lahir'] ?? '');
|
$tanggal_lahir = $conn->real_escape_string($data['tanggal_lahir'] ?? '');
|
||||||
$pendidikan = $conn->real_escape_string($data['pendidikan'] ?? '');
|
$pendidikan = $conn->real_escape_string($data['pendidikan'] ?? '');
|
||||||
$riwayat_penyakit = $conn->real_escape_string($data['riwayat_penyakit'] ?? '');
|
$riwayat_penyakit = $conn->real_escape_string($data['riwayat_penyakit'] ?? '');
|
||||||
@@ -22,6 +21,7 @@ if ($id <= 0 || $nama_kk === '') {
|
|||||||
|
|
||||||
$tgl_val = !empty($tanggal_lahir) ? "'$tanggal_lahir'" : "NULL";
|
$tgl_val = !empty($tanggal_lahir) ? "'$tanggal_lahir'" : "NULL";
|
||||||
|
|
||||||
|
// 1. Update tabel kemiskinan
|
||||||
$sql = "UPDATE kemiskinan SET
|
$sql = "UPDATE kemiskinan SET
|
||||||
nama_kk='$nama_kk',
|
nama_kk='$nama_kk',
|
||||||
jumlah_kk=$jumlah_kk,
|
jumlah_kk=$jumlah_kk,
|
||||||
@@ -34,8 +34,18 @@ $sql = "UPDATE kemiskinan SET
|
|||||||
WHERE id=$id";
|
WHERE id=$id";
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
if ($conn->query($sql)) {
|
||||||
|
// 2. Sync data ke tabel warga (baris Kepala Keluarga)
|
||||||
|
$sql_warga = "UPDATE warga SET
|
||||||
|
nama_warga='$nama_kk',
|
||||||
|
tanggal_lahir=$tgl_val,
|
||||||
|
pendidikan='$pendidikan',
|
||||||
|
riwayat_penyakit='$riwayat_penyakit'
|
||||||
|
WHERE kemiskinan_id=$id AND hubungan_keluarga='Kepala Keluarga'";
|
||||||
|
$conn->query($sql_warga);
|
||||||
|
|
||||||
echo json_encode(["status" => "success"]);
|
echo json_encode(["status" => "success"]);
|
||||||
} else {
|
} else {
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
echo json_encode(["status" => "error", "message" => $conn->error]);
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|||||||
@@ -1,36 +0,0 @@
|
|||||||
<?php
|
|
||||||
include "db_config.php";
|
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
|
||||||
|
|
||||||
$data = json_decode(file_get_contents("php://input"), true);
|
|
||||||
|
|
||||||
$id = isset($data['id']) ? intval($data['id']) : 0;
|
|
||||||
$nama = $conn->real_escape_string($data['nama'] ?? '');
|
|
||||||
$pemilik = $conn->real_escape_string($data['pemilik'] ?? '');
|
|
||||||
$status = $conn->real_escape_string($data['status'] ?? 'SHM');
|
|
||||||
$luas = isset($data['luas']) ? floatval($data['luas']) : 0;
|
|
||||||
$koordinatInput = $data['koordinat'] ?? [];
|
|
||||||
|
|
||||||
if ($id <= 0 || $nama === '') {
|
|
||||||
echo json_encode(["status" => "error", "message" => "Data tidak valid"]);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (is_string($koordinatInput)) {
|
|
||||||
$decoded = json_decode($koordinatInput, true);
|
|
||||||
$koordinat = (json_last_error() === JSON_ERROR_NONE) ? json_encode($decoded) : '[]';
|
|
||||||
} else {
|
|
||||||
$koordinat = json_encode($koordinatInput);
|
|
||||||
}
|
|
||||||
|
|
||||||
$koordinat = $conn->real_escape_string($koordinat);
|
|
||||||
|
|
||||||
$sql = "UPDATE parsil SET nama='$nama', pemilik='$pemilik', status='$status', luas='$luas', koordinat='$koordinat' WHERE id=$id";
|
|
||||||
|
|
||||||
if ($conn->query($sql)) {
|
|
||||||
echo json_encode(["status" => "success"]);
|
|
||||||
} else {
|
|
||||||
echo json_encode(["status" => "error", "message" => $conn->error]);
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
+1214
-1245
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Reference in New Issue
Block a user