23 lines
1005 B
PHP
23 lines
1005 B
PHP
<?php
|
|
// Sistem otomatis membaca ENV dari Coolify. Jika di laptop (localhost), akan kembali memakai setingan Laragon.
|
|
$host = getenv('DB_HOST') ?: 'localhost';
|
|
$dbname = getenv('DB_NAME') ?: 'webgis_baru';
|
|
$username = getenv('DB_USER') ?: 'root';
|
|
$password = getenv('DB_PASSWORD') ?: '';
|
|
$port = '3306'; // Port internal standar MySQL
|
|
|
|
// 1. PDO untuk script yang memang menggunakan PDO (misal: api_donasi.php, api_laporan_warga.php)
|
|
try {
|
|
$pdo = new PDO("mysql:host=$host;port=$port;dbname=$dbname;charset=utf8mb4", $username, $password);
|
|
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
|
} catch (PDOException $e) {
|
|
die("Koneksi PDO Gagal: " . $e->getMessage());
|
|
}
|
|
|
|
// 2. MySQLi untuk script lama yang bergantung pada mysqli (misal: api_kemiskinan.php, api_ibadah.php)
|
|
$conn = new mysqli($host, $username, $password, $dbname, $port);
|
|
if ($conn->connect_error) {
|
|
die("Koneksi MySQLi Gagal: " . $conn->connect_error);
|
|
}
|
|
$conn->set_charset('utf8mb4');
|
|
?>
|