Menambahkan beberapa perubahan

This commit is contained in:
2026-06-09 20:26:18 +07:00
parent 311e5579f4
commit 6495336f18
10 changed files with 156 additions and 14 deletions
+4 -4
View File
@@ -4,10 +4,10 @@
// File: config.php
// ============================================================
define('DB_HOST', 'localhost');
define('DB_USER', 'root'); // Sesuaikan dengan user MySQL Anda
define('DB_PASS', ''); // Sesuaikan dengan password MySQL Anda
define('DB_NAME', 'webgis_p3');
define('DB_HOST', getenv('DB_HOST') ?: 'localhost');
define('DB_USER', getenv('DB_USER') ?: 'root');
define('DB_PASS', getenv('DB_PASS') !== false ? getenv('DB_PASS') : '');
define('DB_NAME', getenv('POVERTY_DB_NAME') ?: 'webgis_p3');
function getDB() {
$conn = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
+36 -2
View File
@@ -783,6 +783,20 @@
document.getElementById('error-msg').classList.remove('show');
}
async function cekKesehatanServer() {
try {
const res = await fetch('api_auth.php', { method: 'GET' });
const text = await res.text();
if (text.trim().startsWith('<?php')) {
tampilError('PHP tidak berjalan di server deploy. File .php ditampilkan mentah — gunakan hosting dengan PHP (Apache/Nginx+PHP-FPM), bukan static site saja.');
return false;
}
return true;
} catch {
return true;
}
}
async function handleLogin(e) {
e.preventDefault();
sembunyiError();
@@ -808,7 +822,25 @@
body: JSON.stringify({ username, password, role: roleSelected })
});
const data = await res.json();
const raw = await res.text();
if (raw.trim().startsWith('<?php')) {
tampilError('PHP tidak berjalan di server. Deploy ulang dengan runtime PHP + MySQL (lihat Dockerfile di repo).');
btn.classList.remove('loading');
btnText.textContent = 'Masuk';
btnArrow.textContent = '→';
return;
}
let data;
try {
data = JSON.parse(raw);
} catch {
tampilError('Respons server tidak valid. Periksa /health.php — kemungkinan PHP atau MySQL belum aktif.');
btn.classList.remove('loading');
btnText.textContent = 'Masuk';
btnArrow.textContent = '→';
return;
}
if (data.success) {
sessionStorage.setItem('webgis_user', JSON.stringify({
@@ -829,13 +861,15 @@
btnArrow.textContent = '→';
}
} catch {
tampilError('Gagal terhubung ke server. Pastikan Apache & MySQL aktif.');
tampilError('Gagal terhubung ke server. PHP/MySQL mungkin belum aktif — buka /health.php untuk diagnosa.');
btn.classList.remove('loading');
btnText.textContent = 'Masuk';
btnArrow.textContent = '→';
}
}
cekKesehatanServer();
// Handle logout redirect
if (new URLSearchParams(location.search).get('logout')) {
sessionStorage.removeItem('webgis_user');