Cover Image

Belajar PHP untuk Pemula: Membuat Website Dinamis dengan Database MySQL

Pendahuluan

Jika kamu sudah memahami HTML, CSS, dan JavaScript dasar, sekarang saatnya naik level ke backend menggunakan PHP dan MySQL. Dengan PHP, kamu bisa membuat website dinamis seperti sistem login, blog, toko online, dan dashboard admin.

Tutorial Cara Buat Konten Miniatur AI Viral 2026 (Step by Step untuk Pemula)

Di tutorial ini kamu akan belajar dari nol:

  • Apa itu PHP
  • Apa itu MySQL
  • Cara koneksi PHP ke database
  • Membuat CRUD (Create, Read, Update, Delete)
  • Membuat sistem tambah dan tampil data

Apa Itu PHP?

PHP adalah bahasa pemrograman server-side yang digunakan untuk membuat website dinamis. Artinya, kode PHP diproses di server sebelum dikirim ke browser.

Contoh sederhana PHP:

Cara Riset Search Intent 2026 yang Disukai AI Search
<?php
echo "Halo Dunia!";
?>

Apa Itu MySQL?

MySQL adalah sistem manajemen database yang digunakan untuk menyimpan data seperti:

  • Data user
  • Data produk
  • Artikel blog
  • Komentar

Persiapan: Install XAMPP

  1. Install XAMPP
  2. Jalankan Apache dan MySQL
  3. Buka browser: http://localhost/phpmyadmin

Membuat Database

Masuk ke phpMyAdmin → klik New → buat database dengan nama:

db_belajarphp

Lalu buat tabel:

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

Membuat Koneksi Database (config.php)

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

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

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

Membuat Form Tambah Data (index.php)

<form method="POST" action="proses_tambah.php">
    Nama: <input type="text" name="nama"><br>
    Email: <input type="email" name="email"><br>
    <button type="submit">Simpan</button>
</form>

Proses Tambah Data (proses_tambah.php)

<?php
include 'config.php';

$nama  = $_POST['nama'];
$email = $_POST['email'];

$query = "INSERT INTO users (nama, email) VALUES ('$nama', '$email')";
mysqli_query($conn, $query);

header("Location: index.php");
?>

Menampilkan Data (Read)

Tambahkan di bawah form:
<?php
include 'config.php';

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

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

Menghapus Data (Delete)

Tambahkan tombol hapus:
<a href="hapus.php?id=<?php echo $row['id']; ?>">Hapus</a>
File hapus.php:
<?php
include 'config.php';
$id = $_GET['id'];

mysqli_query($conn, "DELETE FROM users WHERE id=$id");
header("Location: index.php");
?>

Mengedit Data (Update)

edit.php:
<?php
include 'config.php';
$id = $_GET['id'];
$data = mysqli_query($conn, "SELECT * FROM users WHERE id=$id");
$row = mysqli_fetch_assoc($data);
?>

<form method="POST" action="proses_edit.php">
<input type="hidden" name="id" value="<?php echo $row['id']; ?>">
Nama: <input type="text" name="nama" value="<?php echo $row['nama']; ?>"><br>
Email: <input type="email" name="email" value="<?php echo $row['email']; ?>"><br>
<button type="submit">Update</button>
</form>
proses_edit.php:
<?php
include 'config.php';

$id    = $_POST['id'];
$nama  = $_POST['nama'];
$email = $_POST['email'];

mysqli_query($conn, "UPDATE users SET nama='$nama', email='$email' WHERE id=$id");
header("Location: index.php");
?>

Struktur Folder

/belajarphp
 ├── config.php
 ├── index.php
 ├── proses_tambah.php
 ├── edit.php
 ├── proses_edit.php
 ├── hapus.php

Penjelasan Konsep yang Baru Dipelajari

  • Koneksi Database
  • Query INSERT
  • Query SELECT
  • Query UPDATE
  • Query DELETE
  • Method GET & POST
  • Looping while

Kesalahan Umum Pemula

  • Lupa include config.php
  • Salah nama database
  • Tidak menyalakan MySQL di XAMPP
  • Salah penulisan variabel

Langkah Selanjutnya

Setelah memahami ini, kamu bisa lanjut belajar:

  • Sistem Login & Register
  • Password hashing
  • Session
  • Upload file
  • Keamanan SQL Injection

Kesimpulan

Sekarang kamu sudah memahami cara membuat website dinamis menggunakan PHP dan MySQL dari nol. Dengan memahami CRUD, kamu sudah memiliki fondasi backend yang kuat.

Terus latihan dan kembangkan menjadi sistem login atau dashboard admin sederhana.