2. Belajar PHP: Menghubungkan Website dengan Database MySQL
Belajar PHP: Menghubungkan Website dengan Database MySQL 🔗
PHP adalah bahasa pemrograman skrip sisi server yang dirancang khusus untuk pengembangan web. Bahasa ini sangat populer, bersifat sumber terbuka, dan menjadi tulang punggung dari jutaan situs web di dunia — termasuk WordPress, Facebook, dan Wikipedia. Keunggulan utama PHP adalah kemampuannya berinteraksi langsung dengan berbagai jenis basis data, terutama MySQL yang sudah kita bahas sebelumnya.
Setelah kamu memahami cara kerja situs web (HTML) dan cara menyimpan data (MySQL), langkah selanjutnya adalah mempertemukan keduanya. Di sinilah peran PHP: menjadi jembatan yang mengambil data dari basis data, mengolahnya, lalu menampilkannya ke halaman web agar bisa dilihat oleh pengunjung. Artikel ini akan memandu kamu dari dasar hingga bisa membuat koneksi dan menampilkan data dari MySQL menggunakan PHP.
Apa Itu PHP & Mengapa Sering Dipasangkan dengan MySQL?
PHP singkatan dari PHP: Hypertext Preprocessor. Berbeda dengan HTML yang isinya tetap, kode PHP diproses di server sebelum halaman dikirim ke pengunjung. Artinya, tampilan situs bisa berubah-ubah sesuai kondisi, waktu, atau data yang ada di dalam basis data.
Pasangan PHP dan MySQL adalah kombinasi legendaris dan standar industri sejak lama, sering disebut tumpukan teknologi LAMP/WAMP (Linux/Windows, Apache, MySQL, PHP). Alasannya sederhana:
- Sama-sama Gratis & Open Source: Tidak perlu biaya lisensi.
- Mudah Dipelajari: Sintaksnya sederhana dan banyak sumber belajar.
- Saling Terintegrasi Sempurna: PHP memiliki fungsi bawaan khusus untuk berkomunikasi dengan MySQL.
- Andal & Cepat: Cocok untuk situs skala kecil hingga besar.
Persiapan: Apa Saja yang Dibutuhkan?
Agar bisa menjalankan kode PHP dan MySQL di komputer sendiri, kamu butuh perangkat lunak server lokal. Paling mudah menggunakan paket instalasi seperti XAMPP, WAMP, atau Laragon. Paket ini sudah berisi Apache (server web), MySQL, dan PHP dalam satu pemasangan.
- Unduh dan pasang XAMPP dari situs resminya.
- Jalankan XAMPP Control Panel, lalu nyalakan modul Apache dan MySQL.
- Simpan berkas kode PHP kamu di dalam folder
htdocs(biasanya ada diC:\xampp\htdocs). - Akses berkas melalui peramban dengan alamat:
localhost/nama_folder_kamu/
Cara Menghubungkan PHP ke MySQL
Ada dua cara umum menghubungkan PHP ke MySQL: menggunakan MySQLi atau PDO. Di sini kita akan menggunakan MySQLi karena lebih sederhana dan dirancang khusus untuk MySQL. Ada dua gaya penulisan: prosedural dan berorientasi objek. Kita pakai gaya prosedural agar lebih mudah dimengerti pemula.
1. Koneksi Dasar
Untuk terhubung, kamu butuh 4 data penting: alamat server, nama pengguna, kata sandi, dan nama basis data.
<?php
// Data koneksi
$host = "localhost"; // Alamat server (lokal = localhost)
$user = "root"; // Nama pengguna bawaan XAMPP
$pass = ""; // Kata sandi bawaan XAMPP dikosongkan saja
$db = "nama_database"; // Ganti dengan nama databasemu
// Membuat koneksi
$koneksi = mysqli_connect($host, $user, $pass, $db);
// Cek apakah koneksi berhasil
if (!$koneksi) {
die("Koneksi gagal: " . mysqli_connect_error());
}
echo "Koneksi ke database berhasil!";
?>
Simpan kode di atas dengan nama koneksi.php. Jika tulisan berhasil muncul, berarti PHP sudah bisa berbicara dengan MySQL.
Operasi Dasar: CRUD dengan PHP & MySQL
Dalam pengelolaan data, ada 4 operasi utama yang wajib dikuasai, disingkat CRUD: Create (Tambah), Read (Baca/Tampilkan), Update (Ubah), Delete (Hapus). Mari kita bahas satu per satu.
1. READ: Menampilkan Data dari Database
Ini yang paling sering dipakai, misalnya menampilkan daftar produk, berita, atau daftar pengguna di halaman web.
<?php
// Sertakan berkas koneksi
include 'koneksi.php';
// Perintah SQL untuk mengambil semua data dari tabel 'pengguna'
$sql = "SELECT * FROM pengguna";
$hasil = mysqli_query($koneksi, $sql);
?>
<!-- Menampilkan data dalam bentuk tabel HTML -->
<table border="1" cellpadding="8" cellspacing="0">
<tr>
<th>ID</th>
<th>Nama</th>
<th>Email</th>
<th>Umur</th>
</tr>
<?php
// Mengambil data baris demi baris
while ($data = mysqli_fetch_assoc($hasil)) {
echo "<tr>";
echo "<td>".$data['id']."</td>";
echo "<td>".$data['nama']."</td>";
echo "<td>".$data['email']."</td>";
echo "<td>".$data['umur']."</td>";
echo "</tr>";
}
?>
</table>
2. CREATE: Menambahkan Data Baru
Biasanya digunakan bersamaan dengan formulir HTML. Pengguna mengisi formulir, lalu data dikirim dan disimpan ke database.
Formulir HTML:
<form method="POST" action="">
<label>Nama: </label><br>
<input type="text" name="nama" required><br><br>
<label>Email: </label><br>
<input type="email" name="email" required><br><br>
<label>Umur: </label><br>
<input type="number" name="umur" required><br><br>
<button type="submit" name="simpan">Simpan Data</button>
</form>
Proses Simpan PHP:
<?php
include 'koneksi.php';
// Cek apakah tombol simpan diklik
if (isset($_POST['simpan'])) {
// Ambil data dari formulir
$nama = $_POST['nama'];
$email = $_POST['email'];
$umur = $_POST['umur'];
// Perintah SQL tambah data
$sql = "INSERT INTO pengguna (nama, email, umur)
VALUES ('$nama', '$email', '$umur')";
if (mysqli_query($koneksi, $sql)) {
echo "Data berhasil disimpan!";
} else {
echo "Gagal menyimpan: " . mysqli_error($koneksi);
}
}
?>
3. UPDATE: Mengubah Data Lama
Digunakan untuk memperbarui informasi yang sudah ada. Biasanya kita ambil data dulu, tampilkan di formulir, lalu simpan perubahannya.
<?php
include 'koneksi.php';
// Contoh ubah data dengan ID = 1
$id = 1;
$nama_baru = "Budi Santoso Terubah";
$umur_baru = 23;
$sql = "UPDATE pengguna SET nama='$nama_baru', umur='$umur_baru' WHERE id=$id";
if (mysqli_query($koneksi, $sql)) {
echo "Data berhasil diubah!";
} else {
echo "Gagal mengubah: " . mysqli_error($koneksi);
}
?>
4. DELETE: Menghapus Data
Menghapus rekaman dari basis data. Hati-hati, data yang terhapus tidak bisa dikembalikan lagi.
<?php
include 'koneksi.php';
// Hapus data dengan ID = 3
$id_hapus = 3;
$sql = "DELETE FROM pengguna WHERE id = $id_hapus";
if (mysqli_query($koneksi, $sql)) {
echo "Data berhasil dihapus!";
} else {
echo "Gagal menghapus: " . mysqli_error($koneksi);
}
// Tutup koneksi jika sudah selesai
mysqli_close($koneksi);
?>
Catatan Penting Tentang Keamanan
Contoh kode di atas dibuat sederhana agar mudah dimengerti. Namun, saat membuat situs asli, kamu wajib memperhatikan keamanan agar tidak mudah diretas (terserang SQL Injection). Berikut langkah sederhananya:
- Gunakan Fungsi Pembersih Data: Gunakan
mysqli_real_escape_string()atau lebih disarankan gunakan teknik Prepared Statement (perintah terpisah dengan data). - Enkripsi Kata Sandi: Jangan simpan kata sandi pengguna dalam bentuk teks biasa. Gunakan fungsi
password_hash()saat menyimpan danpassword_verify()saat memeriksa. - Jangan Tampilkan Pesan Error: Di situs publik, sembunyikan pesan error database agar penyerang tidak tahu struktur databasemu.
Perbedaan MySQLi vs PDO
Sebagai tambahan pengetahuan, selain MySQLi, ada juga PDO (PHP Data Objects). Perbedaannya:
- MySQLi: Khusus untuk MySQL, punya gaya penulisan prosedural dan objek.
- PDO: Bisa dipakai untuk 12 jenis basis data berbeda. Jika suatu saat kamu ganti jenis database, kodenya hampir tidak perlu diubah. Lebih fleksibel tapi sedikit lebih rumit.
Tips Belajar PHP & MySQL Agar Cepat Mahir
- Pahami Alur Kerja: Ingat urutannya: Pengguna kirim permintaan -> Server proses PHP -> Ambil simpan data ke MySQL -> Hasil dikirim kembali ke Pengguna.
- Latihan Buat Formulir: Buatlah aplikasi sederhana seperti Daftar Nama, Buku Tamu, atau Sistem Pendaftaran Sederhana. Ini melatih semua fungsi CRUD sekaligus.
- Terapkan Penamaan yang Jelas: Beri nama tabel, kolom, dan variabel dengan nama yang mudah dimengerti, hindari singkatan aneh.
- Biasakan Tutup Koneksi: Meskipun otomatis tertutup saat halaman selesai dimuat, memanggil
mysqli_close()adalah kebiasaan baik. - Eksplorasi Fungsi Bawaan: PHP punya ribuan fungsi bawaan untuk memanipulasi teks, tanggal, berkas, gambar, dll. Pelajari sedikit demi sedikit.
Kesimpulan
PHP adalah kunci untuk mengubah situs web statis menjadi situs web dinamis dan interaktif. Dengan kemampuan menghubungkan ke MySQL, kamu bisa membuat sistem informasi, toko daring, media sosial, hingga aplikasi manajemen data yang canggih.
Awalnya memang ada banyak kode dan logika yang harus dipahami, tapi begitu kamu paham bagaimana data berjalan dari formulir ke database lalu kembali lagi ke tampilan, kamu sudah memiliki pondasi lengkap seorang pengembang web. Gabungkan ilmu HTML, CSS, PHP, dan MySQL, maka kamu sudah bisa membuat hampir semua jenis situs web yang ada saat ini.
Teruslah berlatih membuat proyek nyata. Selamat belajar dan membangun aplikasi keren dengan PHP & MySQL!


Posting Komentar