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 | |
|---|---|---|
| 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 (biasanyalocalhost)$user→ username MySQL (default:root)$pass→ password MySQL (biasanya kosong di local)$db→ nama database yang digunakanmysqli_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 gagalmysqli_connect_error()→ menampilkan pesan errordie()→ 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 datamysqli_fetch_assoc()→ mengambil data per baris dalam bentuk array$data['nama']→ mengambil kolom namawhile→ menampilkan semua data satu per satu