1Koneksi Menggunakan MySQLi (Object-Oriented & Procedural)
Berikut adalah contoh script koneksi PHP menggunakan mysqli yang mengambil kredensial langsung dari variabel lingkungan (getenv):
koneksi-mysqli.php
<?php
$host = getenv('DB_HOST') ?: '4qonex-mysql';
$user = getenv('DB_USER') ?: 'root';
$pass = getenv('DB_PASSWORD') ?: 'rootpassword';
$db = getenv('DB_NAME') ?: 'db_nama_project';
$port = (int)(getenv('DB_PORT') ?: 3306);
// Membuat koneksi MySQLi
$conn = new mysqli($host, $user, $pass, $db, $port);
if ($conn->connect_error) {
die("Koneksi gagal: " . $conn->connect_error);
}
echo "✅ Berhasil terhubung ke database MySQL 4Qonex!";
?>2Koneksi Menggunakan PDO (PHP Data Objects)
Jika Anda menggunakan PDO, berikut adalah contoh implementasinya yang aman dengan prepared statement:
koneksi-pdo.php
<?php
$host = getenv('DB_HOST') ?: '4qonex-mysql';
$port = getenv('DB_PORT') ?: '3306';
$db = getenv('DB_NAME') ?: 'db_nama_project';
$user = getenv('DB_USER') ?: 'root';
$pass = getenv('DB_PASSWORD') ?: 'rootpassword';
try {
$dsn = "mysql:host=$host;port=$port;dbname=$db;charset=utf8mb4";
$pdo = new PDO($dsn, $user, $pass, [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
]);
echo "✅ Koneksi PDO berhasil!";
} catch (PDOException $e) {
die("Koneksi PDO gagal: " . $e->getMessage());
}
?>