READ Data (SELECT) dengan PHP MySQLi Prosedural
Operasi READ menggunakan perintah SQL SELECT. Tujuannya adalah mengambil satu atau lebih baris data dari tabel, lalu menampilkannya dalam bentuk tabel HTML di browser.
Tiga Langkah Utama Operasi READ (SELECT)
Koneksi (Connect): Sambungkan PHP ke database (sama seperti saat CREATE).
Kirim Perintah SELECT (Query): Kirim perintah SQL
SELECTuntuk mengambil semua data yang kamu butuhkan.Ambil dan Tampilkan (Fetch & Display): Ambil hasil dari query satu per satu dan masukkan ke dalam tabel HTML.
Kode Inti: tampil_data.php
Kita akan membuat satu file baru yang bertugas menampilkan seluruh data dari tabel siswa.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Daftar Siswa RPL</title>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
padding: 8px;
}
th { background-color: #f2f2f2; }
</style>
</head>
<body>
<h1>Daftar Siswa SMK RPL</h1>
<table>
<thead>
<tr>
<th>No</th>
<th>Nama</th>
<th>Kelas</th>
<th>Alamat</th>
</tr>
</thead>
<tbody>
<?php
// ===================================
// LANGKAH 1: SAPA DULU (Koneksi)
// ===================================
// Detail identitas database kamu
$host = "localhost";
$user = "root";
$pass = "";
$db = "db_rpl";
$koneksi = mysqli_connect($host, $user, $pass, $db);
// Cek koneksi
if (mysqli_connect_errno()) {
die("Koneksi Gagal: " . mysqli_connect_error());
}
// ===================================
// LANGKAH 2: KIRIM PERINTAH SELECT
// ===================================
// Perintah SQL untuk mengambil SEMUA data di tabel siswa
$sql = "SELECT * FROM siswa ORDER BY id DESC"; // Ambil semua data, urutkan dari ID terbaru
// Jalankan perintah SQL (hasilnya disimpan di variabel $result)
$result = mysqli_query($koneksi, $sql);
// Cek apakah ada data yang ditemukan
if (mysqli_num_rows($result) > 0) {
// ===================================
// LANGKAH 3: AMBIL DAN TAMPILKAN
// ===================================
$no = 1; // Variabel untuk nomor urut tabel
// Melakukan perulangan (looping) untuk mengambil SETIAP BARIS data
while($row = mysqli_fetch_assoc($result)) {
/* * mysqli_fetch_assoc() mengambil satu baris data sebagai array asosiatif.
* $row['nama'] -> Nilai di kolom 'nama'
* $row['kelas'] -> Nilai di kolom 'kelas'
*/
echo "<tr>";
echo "<td>" . $no++ . "</td>";
// Menampilkan data dari database ke dalam baris tabel HTML
echo "<td>" . $row['nama'] . "</td>";
echo "<td>" . $row['kelas'] . "</td>";
echo "<td>" . $row['alamat'] . "</td>";
echo "</tr>";
}
} else {
// Jika tidak ada data di database
echo "<tr><td colspan='4'>Tidak ada data siswa yang ditemukan.</td></tr>";
}
// Terakhir: Tutup koneksi
mysqli_close($koneksi);
?>
</tbody>
</table>
</body>
</html>
Penjelasan Koding READ
1. Perintah SQL SELECT
SELECT * FROM siswa: Artinya, "Ambil semua kolom (*) dari tabelsiswa."ORDER BY id DESC: Opsional, untuk mengurutkan data berdasarkan kolomidsecara menurun (DESC), sehingga data terbaru muncul di paling atas.
2. Fungsi mysqli_query()
$result = mysqli_query($koneksi, $sql);: Menjalankan perintahSELECT. Hasilnya (yang bisa berupa banyak baris data) disimpan ke variabel$result. Variabel$resultini bukan data yang siap ditampilkan, tapi ibarat tumpukan berkas data.
3. Fungsi mysqli_num_rows()
if (mysqli_num_rows($result) > 0): Mengecek apakah ada jumlah baris (num_rows) yang ditemukan di$result. Kalau lebih dari nol, artinya ada data.
4. Perulangan while dan mysqli_fetch_assoc()
Ini adalah inti dari menampilkan data:
while($row = mysqli_fetch_assoc($result)): Ini adalah perulangan yang akan terus berjalan selama masih ada baris data di tumpukan$result.Setiap kali perulangan berjalan, fungsi
mysqli_fetch_assoc()mengambil satu baris data dari$resultdan mengubahnya menjadi Array Asosiatif yang disimpan di variabel$row.Array Asosiatif itu seperti kamus, di mana kamu bisa memanggil nilainya menggunakan nama kolom sebagai kunci. Contoh:
$row['nama']akan menghasilkan nama siswa.
Di dalam perulangan
while, kita menggunakanechountuk mencetak tag HTML<tr>dan<td>, memasukkan nilai$row['nama'],$row['kelas'], dan$row['alamat']ke dalamnya, sehingga datanya tampil dalam bentuk tabel HTML.
Dengan menggabungkan HTML (untuk tampilan) dan PHP (untuk mengambil data), kamu berhasil membuat halaman web yang dinamis! Selamat mencoba!
Tidak ada komentar
Posting Komentar