Tampilkan Data Dari Database PHP PDO

Jika sudah selesai dan berhasil koneksi ke basis data saatnya Anda beralih ke berkas index.php untuk menampilkan semua data mahasiswa. Ada beberapa cara mengeluarkan datanya yaitu dengan asosiatif atau objek, saya sangat menyarankan objek meskipun jarang orang menggunakannya. Tapi itu akan Anda temui jika sudah berkerja membuat aplikasi dengan kerangka kerja PHP.

Daftar isi:

Baca juga:

Berkas index.php

Saya membuatnya sederhana saja untuk memulai tampilan crud dan Anda bisa mengubanya kapanpun yang Anda suka. Tambahkan skrip ini pada berkas index.php:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Data Mahasiswa</title>
</head>
<body>
    <h1>Semua data mahasiswa</h1>
    <a href="create.php">Tambah mahasiswa</a>
    <br>
    <br>
    <table border="1">
        <thead>
            <tr>
                <th>No</th>
                <th>Nama</th>
                <th>Gender</th>
                <th>Email</th>
                <th>Alamat</th>
                <th>Action</th>
            </tr>
        </thead>
        <tbody>
            <!-- skrip PHP -->
        </tbody>
    </table>
</body>
</html>

Skrip PHP

Pada skrip ini saya memanggil berkas config.php untuk koneksi basis data dan mengambil variabel $conn yang diperlukan oleh prepare(). Mungkin Anda akan bertanya kenapa mengeluarkan data tidak mengunakan echo (<?php echo ...; ?>) dan kenapa menjadi <?= ...; ?>, sebenarnya itu sama saja. Berikut skrip yang harus Anda gabungkan pada skrip di atas:

<?php
    // memanggil berkas dari koneksi basis data
    include 'config.php';

    // menampilkan data mahasiswa
    $no = 1;
    $result = $conn->prepare("SELECT * FROM mahasiswa");
    $result->execute();
    while ($item = $result->fetch(PDO::FETCH_OBJ)) {
?>
    <tr>
        <td><?= $no++; ?></td>
        <td><?= $item->nama; ?></td>
        <td><?= $item->gender == 0 ? 'Laki-Laki' : 'Perempuan'; ?></td>
        <td><?= $item->email; ?></td>
        <td><?= $item->alamat; ?></td>
        <td>
            <a href="edit.php?id=<?= $item->id; ?>">Edit</a>
            <a href="show.php?id=<?= $item->id; ?>">Show</a>
        </td>
    </tr>
<?php } ?>

Pada bagian gender seperti yang saya utarakan pada tutorial persiapan crud, saya menggunakan number 0 Laki-Laki dan 1 Perempuan. Seperti contoh diatas itu sangat bermanfaat dan tidak memakan banyak ukuran basis data yang diperlukan.

Catatan: Saya secara pribadi lebih suka menggunakan objek ketimbang asosiatif array, karena lebih sederhana dan mudah.

Mengeluarkan dengan asosiatif array

Jika Anda lebih suka menggunakan asosiatif array ketimbang objek, silakan ganti dengan contoh berikut ini:

$result->fetch(PDO::FETCH_ASSOC)
...
$item['nama'];