Refactor database interactions and schema updates

- Updated column names in insert_data.php and update_data.php to match the database schema.
- Added new tables for 'jalan', 'parsil', and 'jalan_rusak' in spbu_db.sql to enhance data structure.
- Changed admin password hash in spbu_db.sql for security improvements.
This commit is contained in:
2026-06-12 11:02:31 +07:00
parent 6cc14e087e
commit 6901d07126
5 changed files with 698 additions and 726 deletions
+19 -8
View File
@@ -1,16 +1,27 @@
CREATE DATABASE db_spbu; CREATE DATABASE IF NOT EXISTS spbu_db;
USE db_spbu; USE spbu_db;
CREATE TABLE spbu ( CREATE TABLE IF NOT EXISTS admin (
id INT AUTO_INCREMENT PRIMARY KEY, id INT AUTO_INCREMENT PRIMARY KEY,
nama_spbu VARCHAR(100), username VARCHAR(50) NOT NULL UNIQUE,
no_spbu VARCHAR(50), password VARCHAR(255) NOT NULL,
status ENUM('Buka 24 Jam', 'Tidak 24 Jam'),
latitude DOUBLE,
longitude DOUBLE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
); );
INSERT INTO admin (username, password) VALUES
('admin', '$2y$10$A9m/u6sAxEwgIO4dlmIvNO2WJioIya4TwMvSe06hgFrDsq1xg7x16');
CREATE TABLE IF NOT EXISTS spbu (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(200) NOT NULL,
no_spbu VARCHAR(50) NOT NULL,
status ENUM('24jam', 'terbatas') NOT NULL DEFAULT '24jam',
latitude DECIMAL(10, 7) NOT NULL,
longitude DECIMAL(10, 7) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
CREATE TABLE jalan ( CREATE TABLE jalan (
id INT AUTO_INCREMENT PRIMARY KEY, id INT AUTO_INCREMENT PRIMARY KEY,
nama_jalan VARCHAR(100), nama_jalan VARCHAR(100),
+648 -712
View File
File diff suppressed because it is too large Load Diff
+1 -3
View File
@@ -7,14 +7,12 @@ $status = $_POST['status'] ?? '';
$lat = $_POST['lat'] ?? ''; $lat = $_POST['lat'] ?? '';
$lng = $_POST['lng'] ?? ''; $lng = $_POST['lng'] ?? '';
// VALIDASI
if($nama == "" || $no == "" || $status == "" || $lat == "" || $lng == ""){ if($nama == "" || $no == "" || $status == "" || $lat == "" || $lng == ""){
echo "DATA TIDAK LENGKAP"; echo "DATA TIDAK LENGKAP";
exit; exit;
} }
// PREPARED STATEMENT $stmt = $conn->prepare("INSERT INTO spbu (nama, no_spbu, status, latitude, longitude) VALUES (?, ?, ?, ?, ?)");
$stmt = $conn->prepare("INSERT INTO spbu (nama_spbu, no_spbu, status, latitude, longitude) VALUES (?, ?, ?, ?, ?)");
$stmt->bind_param("sssdd", $nama, $no, $status, $lat, $lng); $stmt->bind_param("sssdd", $nama, $no, $status, $lat, $lng);
if($stmt->execute()){ if($stmt->execute()){
+1 -1
View File
@@ -11,7 +11,7 @@ if($id == "" || $nama == "" || $no == "" || $status == ""){
exit; exit;
} }
$stmt = $conn->prepare("UPDATE spbu SET nama_spbu=?, no_spbu=?, status=? WHERE id=?"); $stmt = $conn->prepare("UPDATE spbu SET nama=?, no_spbu=?, status=? WHERE id=?");
$stmt->bind_param("sssi", $nama, $no, $status, $id); $stmt->bind_param("sssi", $nama, $no, $status, $id);
if($stmt->execute()){ if($stmt->execute()){
+29 -2
View File
@@ -9,7 +9,7 @@ CREATE TABLE IF NOT EXISTS admin (
); );
INSERT INTO admin (username, password) VALUES INSERT INTO admin (username, password) VALUES
('admin', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi'); ('admin', '$2y$10$A9m/u6sAxEwgIO4dlmIvNO2WJioIya4TwMvSe06hgFrDsq1xg7x16');
CREATE TABLE IF NOT EXISTS spbu ( CREATE TABLE IF NOT EXISTS spbu (
id INT AUTO_INCREMENT PRIMARY KEY, id INT AUTO_INCREMENT PRIMARY KEY,
@@ -20,4 +20,31 @@ CREATE TABLE IF NOT EXISTS spbu (
longitude DECIMAL(10, 7) NOT NULL, longitude DECIMAL(10, 7) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
); );
CREATE TABLE jalan (
id INT AUTO_INCREMENT PRIMARY KEY,
nama_jalan VARCHAR(100),
status ENUM('Nasional','Provinsi','Kabupaten'),
panjang DOUBLE,
geojson TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE parsil (
id INT AUTO_INCREMENT PRIMARY KEY,
pemilik VARCHAR(100),
status ENUM('SHM','HGB','HGU','HP'),
luas DOUBLE,
geojson TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS `jalan_rusak` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`deskripsi` TEXT NOT NULL,
`foto` VARCHAR(255) NOT NULL,
`latitude` DOUBLE NOT NULL,
`longitude` DOUBLE NOT NULL,
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;