fix : error db tidak connect
This commit is contained in:
+10
-18
@@ -1,33 +1,25 @@
|
||||
<?php
|
||||
/**
|
||||
* Nama Berkas: koneksi.php
|
||||
* Kegunaan: Menangani jembatan komunikasi antara skrip PHP dengan server basis data MySQL menggunakan PDO.
|
||||
* Kegunaan: Menangani koneksi PDO dengan dukungan variabel lingkungan untuk lingkungan produksi.
|
||||
*/
|
||||
|
||||
header("Content-Type: application/json");
|
||||
|
||||
$indeks_host = "127.0.0.1";
|
||||
$nama_pengguna = "root";
|
||||
$kata_sandi = "root";
|
||||
$nama_database = "webgis_db";
|
||||
// Membaca dari environment peladen, jika tidak ada, gunakan nilai bawaan (fallback) untuk lokal
|
||||
$indeks_host = getenv('DB_HOST') ?: "127.0.0.1";
|
||||
$port_db = getenv('DB_PORT') ?: "3306";
|
||||
$nama_pengguna = getenv('DB_USER') ?: "root";
|
||||
$kata_sandi = getenv('DB_PASS') ?: "root";
|
||||
$nama_database = getenv('DB_NAME') ?: "webgis_db";
|
||||
|
||||
try {
|
||||
/* * Membuka koneksi baru dengan penggerak PDO MySQL.
|
||||
* Mengatur set karakter ke UTF-8 untuk mencegah kerusakan simbol geometri data spasial.
|
||||
*/
|
||||
$koneksi_pdo = new PDO("mysql:host=$indeks_host;dbname=$nama_database;charset=utf8", $nama_pengguna, $kata_sandi);
|
||||
|
||||
/* * Mengaktifkan sistem penanganan kesalahan otomatis tingkat industri.
|
||||
* Parameter ATTR_ERRMODE set ke ERRMODE_EXCEPTION memaksa setiap kegagalan query menjadi sebuah Exception yang aman.
|
||||
*/
|
||||
$koneksi_pdo = new PDO("mysql:host=$indeks_host;port=$port_db;dbname=$nama_database;charset=utf8", $nama_pengguna, $kata_sandi);
|
||||
$koneksi_pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
|
||||
} catch (PDOException $kesalahan_sistem) {
|
||||
// Menghentikan proses secara aman dan mengembalikan pesan kegagalan terformat JSON
|
||||
echo json_encode([
|
||||
"status" => "error",
|
||||
"message" => "Koneksi ke basis data gagal dilakukan: " . $kesalahan_sistem->getMessage()
|
||||
"message" => "Koneksi basis data gagal: " . $kesalahan_sistem->getMessage()
|
||||
]);
|
||||
exit;
|
||||
}
|
||||
?>
|
||||
?>
|
||||
Reference in New Issue
Block a user