Cara Membuat Config.php untuk Koneksi MySQL di PHP

Dalam setiap aplikasi web berbasis PHP yang menggunakan database, salah satu langkah pertama yang wajib dilakukan adalah membuat koneksi ke database MySQL. File konfigurasi (config.php) berfungsi sebagai pusat pengaturan koneksi ke database. Dengan memisahkan konfigurasi dari file utama, kita dapat mengelola dan memelihara sistem dengan lebih rapi dan aman.

Cara Membuat config.php dalam Proyek PHP?

File config.php biasanya berisi:

  • Informasi kredensial database (host, username, password, dan nama database)
  • Inisialisasi koneksi dengan fungsi mysqli atau PDO
  • Pengaturan dasar seperti session dan base URL

Struktur Dasar File config.php

Berikut adalah contoh paling umum dari file config.php menggunakan MySQLi:

<?php
// config.php

// Konfigurasi Database
$host     = 'localhost'; // Alamat server MySQL, biasanya 'localhost'
$username = 'root';      // Username database
$password = '';          // Password database (kosong untuk default di localhost)
$database = 'nama_database'; // Ganti dengan nama database Anda

// Membuat koneksi ke database
$koneksi = new mysqli($host, $username, $password, $database);

// Cek koneksi
if ($koneksi->connect_error) {
    die("Koneksi database gagal: " . $koneksi->connect_error);
}

// Pengaturan dasar website
$site_title = 'Judul Website Anda';
$base_url   = 'http://' . $_SERVER['HTTP_HOST'] . '/nama-folder'; // Ganti sesuai folder proyek Anda

// Memulai session (jika belum dimulai)
if (session_status() == PHP_SESSION_NONE) {
    session_start();
}
?>

Penjelasan Singkat:

  • mysqli: Merupakan ekstensi untuk koneksi MySQL dengan PHP. Cocok untuk sebagian besar aplikasi web sederhana.
  • session_start(): Berguna untuk mengelola sesi login atau data pengguna selama penggunaan situs.
Baca Juga  Mencegah Form Input Berulang dengan PHP dan JavaScript

Cara Menggunakan config.php

Setelah Anda membuat file config.php, langkah berikutnya adalah menyertakannya di setiap file PHP yang membutuhkan koneksi ke database. Gunakan perintah:

require_once 'config.php';

Letakkan baris ini di bagian paling atas setiap file PHP Anda. Ini memastikan koneksi database tersedia sebelum fungsi lain dijalankan.

Tips Keamanan Saat Menggunakan config.php

Karena config.php menyimpan informasi sensitif seperti username dan password database, berikut beberapa tips untuk meningkatkan keamanannya:

  1. Letakkan file di luar folder public_html atau htdocs jika memungkinkan.
  2. Gunakan file .htaccess untuk mencegah akses langsung ke file:
    <Files "config.php">
    Order Allow,Deny
    Deny from all
    </Files>
    
  3. Gunakan variabel environment (.env) untuk menyimpan kredensial dalam proyek berskala besar atau menggunakan framework.
  4. Jangan pernah mengunggah file config.php ke repositori publik seperti GitHub tanpa mengecualikannya terlebih dahulu.
Baca Juga  Cara Membuat Form Login Sederhana dengan PHP dan MySQL

Alternatif Koneksi: Menggunakan PDO

Selain mysqli, Anda juga dapat menggunakan PDO (PHP Data Objects) yang lebih fleksibel dan aman:

<?php
// config.php menggunakan PDO

$host     = 'localhost';
$dbname   = 'nama_database';
$username = 'root';
$password = '';

try {
    $koneksi = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
    $koneksi->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
    die("Koneksi gagal: " . $e->getMessage());
}
?>

Keunggulan PDO:

  • Mendukung berbagai jenis database selain MySQL (seperti PostgreSQL, SQLite)
  • Mendukung statement yang dipersiapkan (prepared statement) untuk keamanan dari SQL Injection

Studi Kasus Penggunaan config.php

Studi Kasus 1: Sistem Login Sederhana

Dalam aplikasi login sederhana, Anda bisa menghubungkan login.php ke config.php untuk mengambil data user dari database:

require_once 'config.php';

$username = $_POST['username'];
$password = $_POST['password'];

$query = $koneksi->query("SELECT * FROM users WHERE username='$username' AND password='$password'");

Catatan: Untuk keamanan, selalu gunakan prepared statements untuk mencegah SQL Injection.

Studi Kasus 2: Menampilkan Data

require_once 'config.php';

$result = $koneksi->query("SELECT * FROM produk");

while($row = $result->fetch_assoc()) {
    echo $row['nama_produk'] . "<br>";
}

Kesimpulan

File config.php adalah komponen penting dalam pengembangan web berbasis PHP. Dengan memisahkan konfigurasi koneksi database ke dalam satu file, kamu dapat:

  • Mempermudah manajemen proyek
  • Meningkatkan keamanan aplikasi
  • Mengurangi pengulangan kode
Baca Juga  Cara Membuat Logout di PHP dengan Session

Baik menggunakan MySQLi maupun PDO, pastikan untuk mengamankan file config.php Anda dari akses tidak sah, terutama saat aplikasi Anda online.

Penutup

Sekarang kamu sudah mengetahui cara membuat file config.php untuk koneksi MySQL di PHP dengan aman dan efisien. File ini menjadi pondasi penting dalam proyek-proyek web seperti sistem login, manajemen data, dan sebagainya.

Jika kamu sedang membangun website dari nol, mulailah dengan struktur folder yang baik dan penempatan file config.php yang aman. Selamat mencoba!

Apa pendapatmu? Tulis di kolom komentar dengan sopan dan beretika. Jangan lupa bagikan agar semakin banyak yang tahu!

Leave a Reply

Your email address will not be published.

Spam check: