Koneksi PHP ke Database MySQL

Database MySQL

Database adalah tempat untuk menyimpan data secara terstruktur supaya bisa digunakan kembali. Dalam aplikasi web, database hampir selalu digunakan, misalnya untuk:

  • menyimpan data user (login, register)
  • menyimpan data produk
  • menyimpan data transaksi

Struktur Database

Secara umum, database punya struktur seperti ini:

  • Database → wadah utama (misalnya: db_latihan)
  • Table → tempat data disimpan dalam bentuk tabel
  • Field (Kolom) → nama atribut (contoh: nama, email)
  • Record (Baris) → isi data

Contoh tabel:

id nama email
1 Andi [email protected]
2 Budi [email protected]

Membuat Database dan Tabel

CREATE DATABASE db_latihan;

USE db_latihan;

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nama VARCHAR(100),
    email VARCHAR(100)
);

Koneksi PHP ke MySQL

Membuat Koneksi

Membuat file koneksi.php

<?php
$host = "localhost";
$user = "root";
$pass = "";
$db   = "db_latihan";

$conn = mysqli_connect($host, $user, $pass, $db);

if (!$conn) {
    die("Koneksi gagal: " . mysqli_connect_error());
}
?>

Penjelasan:

  • $host → alamat server database (biasanya localhost)
  • $user → username MySQL (default: root)
  • $pass → password MySQL (biasanya kosong di local)
  • $db → nama database yang digunakan
  • mysqli_connect() → fungsi untuk membuat koneksi
  • $conn → variabel yang menyimpan koneksi

Cek Koneksi

<?php
if (!$conn) {
    die("Koneksi gagal: " . mysqli_connect_error());
} else {
    echo "Koneksi berhasil";
}
?>

Penjelasan:

  • if (!$conn) → mengecek apakah koneksi gagal
  • mysqli_connect_error() → menampilkan pesan error
  • die() → menghentikan program jika gagal
  • Jika berhasil → akan menampilkan "Koneksi berhasil"

Menggunakan koneksi

<?php
include "koneksi.php";

echo "Terhubung ke database";
?>

Penjelasan:

  • include → mengambil file lain
  • Dengan ini, koneksi langsung bisa dipakai
  • Tidak perlu menulis ulang kode koneksi

Mengambil Data (SELECT)

<?php
include "koneksi.php";

$query = mysqli_query($conn, "SELECT * FROM users");

while ($data = mysqli_fetch_assoc($query)) {
    echo $data['nama'] . "<br>";
}
?>

Penjelasan:

  • mysqli_query() → menjalankan query SQL
  • "SELECT * FROM users" → mengambil semua data
  • mysqli_fetch_assoc() → mengambil data per baris dalam bentuk array
  • $data['nama'] → mengambil kolom nama
  • while → menampilkan semua data satu per satu