Contoh Script PHP Sederhana Menampilkan Data: Panduan Lengkap untuk Pemula

Bahasa pemrograman PHP adalah salah satu bahasa yang paling banyak digunakan untuk pengembangan web. Kemudahannya dalam dipelajari dan fleksibilitasnya dalam berinteraksi dengan database menjadikannya pilihan populer bagi para pengembang web, baik pemula maupun profesional. Dalam artikel ini, kita akan membahas secara mendalam tentang contoh script PHP sederhana menampilkan data dari database MySQL. Panduan ini dirancang khusus untuk pemula yang baru memulai perjalanan mereka dalam dunia PHP dan database.

Mengapa Mempelajari Script PHP Menampilkan Data?

Sebelum kita masuk ke contoh kode, mari kita pahami mengapa mempelajari cara menampilkan data dari database dengan PHP sangat penting. Kemampuan ini adalah fondasi dari banyak aplikasi web dinamis. Bayangkan sebuah toko online: setiap produk yang Anda lihat, setiap detail produk, dan bahkan kategori produk, semuanya diambil dari database dan ditampilkan di halaman web menggunakan script PHP. Tanpa kemampuan ini, web akan menjadi kumpulan halaman statis yang membosankan.

Selain itu, pemahaman tentang cara menampilkan data PHP memungkinkan Anda untuk:

  • Membuat aplikasi web dinamis: Bangun situs web yang dapat berinteraksi dengan pengguna dan menampilkan konten yang relevan berdasarkan data yang disimpan.
  • Mengotomatiskan tugas: Automatiskan tugas-tugas seperti pembuatan laporan, pengiriman email, dan pembaruan data.
  • Mengelola data secara efisien: Kelola data dalam database dengan mudah dan efisien.
  • Meningkatkan pengalaman pengguna: Berikan pengalaman pengguna yang lebih baik dengan menampilkan informasi yang relevan dan personal.

Persiapan Sebelum Membuat Script PHP Menampilkan Data

Sebelum kita mulai menulis kode, ada beberapa persiapan yang perlu dilakukan:

  1. Instalasi Web Server: Anda memerlukan web server seperti Apache atau Nginx. Jika Anda menggunakan Windows, Anda dapat menggunakan XAMPP atau WAMP. Untuk Linux, Anda dapat menginstal Apache, MySQL, dan PHP secara manual.

  2. Instalasi PHP: Pastikan PHP sudah terinstal dan terkonfigurasi dengan benar di web server Anda. Anda dapat memeriksa versi PHP dengan menjalankan perintah php -v di terminal atau command prompt.

  3. Instalasi Database Server: Kita akan menggunakan MySQL sebagai database. Pastikan MySQL sudah terinstal dan berjalan. Anda dapat menggunakan tools seperti phpMyAdmin untuk mengelola database MySQL Anda.

  4. Database dan Tabel: Buat database dan tabel yang akan kita gunakan untuk menyimpan data. Sebagai contoh, kita akan membuat database bernama belajar_php dan tabel bernama users dengan struktur sebagai berikut:

    CREATE DATABASE belajar_php;
    
    USE belajar_php;
    
    CREATE TABLE users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        nama VARCHAR(255) NOT NULL,
        email VARCHAR(255) NOT NULL,
        tanggal_daftar TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    );
    
    INSERT INTO users (nama, email) VALUES
    ('John Doe', '[email protected]'),
    ('Jane Smith', '[email protected]'),
    ('Peter Jones', '[email protected]');
    

Contoh Script PHP Sederhana: Koneksi ke Database

Langkah pertama adalah membuat koneksi ke database MySQL. Berikut adalah contoh script PHP untuk melakukan koneksi:

<?php
$host = 'localhost'; // Host database
$username = 'root'; // Username database
$password = ''; // Password database
$database = 'belajar_php'; // Nama database

// Membuat koneksi
$conn = new mysqli($host, $username, $password, $database);

// Memeriksa koneksi
if ($conn->connect_error) {
    die('Koneksi gagal: ' . $conn->connect_error);
}

echo 'Koneksi berhasil!';
?>

Penjelasan Kode:

  • $host, $username, $password, dan $database adalah variabel yang menyimpan informasi koneksi database.
  • new mysqli() adalah fungsi untuk membuat objek koneksi ke database MySQL.
  • $conn->connect_error adalah properti yang menyimpan pesan error jika koneksi gagal.
  • die() adalah fungsi untuk menghentikan eksekusi script jika terjadi error.
  • echo adalah fungsi untuk menampilkan teks di browser.

Simpan script ini dengan nama koneksi.php dan letakkan di direktori web server Anda (misalnya, htdocs di XAMPP). Buka script ini di browser (misalnya, http://localhost/koneksi.php). Jika Anda melihat pesan "Koneksi berhasil!", berarti koneksi ke database berhasil.

Contoh Script PHP Sederhana: Menampilkan Data dari Database

Setelah berhasil membuat koneksi, selanjutnya kita akan menampilkan data dari tabel users. Berikut adalah contoh script PHP untuk menampilkan data:

<?php
include 'koneksi.php'; // Menyertakan file koneksi

// Query untuk mengambil data dari tabel users
$sql = 'SELECT id, nama, email, tanggal_daftar FROM users';
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // Menampilkan data di dalam tabel HTML
    echo '<table border="1">';
    echo '<tr><th>ID</th><th>Nama</th><th>Email</th><th>Tanggal Daftar</th></tr>';

    // Loop untuk menampilkan setiap baris data
    while($row = $result->fetch_assoc()) {
        echo '<tr>';
        echo '<td>' . $row['id'] . '</td>';
        echo '<td>' . $row['nama'] . '</td>';
        echo '<td>' . $row['email'] . '</td>';
        echo '<td>' . $row['tanggal_daftar'] . '</td>';
        echo '</tr>';
    }

    echo '</table>';
} else {
    echo 'Tidak ada data ditemukan.';
}

$conn->close(); // Menutup koneksi
?>

Penjelasan Kode:

  • include 'koneksi.php'; menyertakan file koneksi.php yang berisi kode koneksi ke database.
  • $sql = 'SELECT ... FROM users'; adalah query SQL untuk mengambil data dari tabel users. Kita mengambil semua kolom, yaitu id, nama, email, dan tanggal_daftar.
  • $conn->query($sql); menjalankan query SQL dan menyimpan hasilnya di variabel $result.
  • $result->num_rows > 0 memeriksa apakah ada data yang ditemukan. Jika ada, maka kode di dalam blok if akan dieksekusi.
  • echo '<table border="1">'; memulai tag HTML untuk membuat tabel.
  • while($row = $result->fetch_assoc()) adalah loop untuk mengambil setiap baris data dari hasil query. $result->fetch_assoc() mengembalikan array asosiatif yang berisi data dari setiap kolom.
  • echo '<td>' . $row['id'] . '</td>'; menampilkan data dari kolom id di dalam sel tabel.
  • echo '</table>'; menutup tag HTML untuk membuat tabel.
  • $conn->close(); menutup koneksi ke database.

Simpan script ini dengan nama tampilkan_data.php dan letakkan di direktori yang sama dengan koneksi.php. Buka script ini di browser (misalnya, http://localhost/tampilkan_data.php). Anda akan melihat tabel yang berisi data dari tabel users.

Modifikasi Script: Menampilkan Data dengan Kondisi (WHERE Clause)

Anda juga dapat menampilkan data dengan kondisi tertentu menggunakan klausa WHERE dalam query SQL. Misalnya, kita ingin menampilkan data user dengan nama 'John Doe'. Berikut adalah contoh script PHP:

<?php
include 'koneksi.php';

$sql = 'SELECT id, nama, email, tanggal_daftar FROM users WHERE nama = "John Doe"';
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo '<table border="1">';
    echo '<tr><th>ID</th><th>Nama</th><th>Email</th><th>Tanggal Daftar</th></tr>';

    while($row = $result->fetch_assoc()) {
        echo '<tr>';
        echo '<td>' . $row['id'] . '</td>';
        echo '<td>' . $row['nama'] . '</td>';
        echo '<td>' . $row['email'] . '</td>';
        echo '<td>' . $row['tanggal_daftar'] . '</td>';
        echo '</tr>';
    }

    echo '</table>';
} else {
    echo 'Tidak ada data ditemukan.';
}

$conn->close();
?>

Penjelasan Kode:

  • $sql = 'SELECT ... FROM users WHERE nama = "John Doe"'; adalah query SQL yang menggunakan klausa WHERE untuk memfilter data. Hanya baris dengan kolom nama yang bernilai 'John Doe' yang akan diambil.

Tips dan Trik dalam Membuat Script PHP Menampilkan Data

Berikut adalah beberapa tips dan trik yang dapat membantu Anda dalam membuat script PHP untuk menampilkan data:

  • Gunakan Prepared Statements: Prepared statements adalah cara yang lebih aman dan efisien untuk menjalankan query SQL. Mereka membantu mencegah serangan SQL injection dan meningkatkan performa.
  • Validasi Input: Selalu validasi input dari pengguna untuk mencegah error dan potensi masalah keamanan.
  • Gunakan Framework PHP: Framework PHP seperti Laravel atau CodeIgniter dapat membantu Anda mengembangkan aplikasi web dengan lebih cepat dan efisien. Mereka menyediakan banyak fitur dan komponen yang sudah siap pakai.
  • Pisahkan Kode: Pisahkan kode koneksi database, query SQL, dan tampilan data ke dalam file yang berbeda untuk membuat kode Anda lebih terstruktur dan mudah dikelola.
  • Gunakan Template Engine: Template engine seperti Twig dapat membantu Anda memisahkan logika aplikasi dari tampilan, sehingga kode Anda lebih bersih dan mudah dipelihara.

Keamanan dalam Script PHP: Mencegah SQL Injection

Salah satu ancaman keamanan terbesar dalam aplikasi web adalah SQL injection. SQL injection terjadi ketika penyerang dapat memasukkan kode SQL berbahaya ke dalam query Anda, yang dapat memungkinkan mereka untuk mengakses, memodifikasi, atau menghapus data dalam database Anda. Berikut adalah cara mencegah SQL injection:

  • Gunakan Prepared Statements: Seperti yang disebutkan sebelumnya, prepared statements adalah cara terbaik untuk mencegah SQL injection. Prepared statements memisahkan kode SQL dari data, sehingga penyerang tidak dapat memasukkan kode SQL berbahaya ke dalam query.
  • Validasi Input: Validasi input dari pengguna untuk memastikan bahwa input tersebut sesuai dengan format yang diharapkan. Misalnya, jika Anda mengharapkan input berupa angka, pastikan bahwa input tersebut benar-benar angka.
  • Gunakan Fungsi Escaping: Fungsi escaping seperti mysqli_real_escape_string() dapat digunakan untuk membersihkan input dari karakter-karakter khusus yang dapat digunakan untuk melakukan SQL injection.

Studi Kasus: Membuat Halaman Daftar Buku Sederhana

Mari kita terapkan apa yang telah kita pelajari untuk membuat halaman daftar buku sederhana. Kita akan membuat database bernama perpustakaan dan tabel bernama buku dengan struktur sebagai berikut:

CREATE DATABASE perpustakaan;

USE perpustakaan;

CREATE TABLE buku (
    id INT AUTO_INCREMENT PRIMARY KEY,
    judul VARCHAR(255) NOT NULL,
    pengarang VARCHAR(255) NOT NULL,
    penerbit VARCHAR(255) NOT NULL,
    tahun_terbit INT
);

INSERT INTO buku (judul, pengarang, penerbit, tahun_terbit) VALUES
('Laskar Pelangi', 'Andrea Hirata', 'Bentang Pustaka', 2005),
('Bumi Manusia', 'Pramoedya Ananta Toer', 'Hasta Mitra', 1980),
('Harry Potter and the Sorcerer''s Stone', 'J.K. Rowling', 'Bloomsbury', 1997);

Kemudian, kita akan membuat script PHP untuk menampilkan daftar buku dari tabel buku:

<?php
include 'koneksi.php';

$sql = 'SELECT id, judul, pengarang, penerbit, tahun_terbit FROM buku';
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo '<table border="1">';
    echo '<tr><th>ID</th><th>Judul</th><th>Pengarang</th><th>Penerbit</th><th>Tahun Terbit</th></tr>';

    while($row = $result->fetch_assoc()) {
        echo '<tr>';
        echo '<td>' . $row['id'] . '</td>';
        echo '<td>' . $row['judul'] . '</td>';
        echo '<td>' . $row['pengarang'] . '</td>';
        echo '<td>' . $row['penerbit'] . '</td>';
        echo '<td>' . $row['tahun_terbit'] . '</td>';
        echo '</tr>';
    }

    echo '</table>';
} else {
    echo 'Tidak ada data ditemukan.';
}

$conn->close();
?>

Simpan script ini dengan nama daftar_buku.php dan letakkan di direktori yang sama dengan koneksi.php. Buka script ini di browser (misalnya, http://localhost/daftar_buku.php). Anda akan melihat tabel yang berisi daftar buku dari tabel buku.

Kesimpulan: Menguasai Dasar-Dasar PHP Menampilkan Data

Dalam artikel ini, kita telah membahas secara mendalam tentang contoh script PHP sederhana menampilkan data dari database MySQL. Kita telah mempelajari cara membuat koneksi ke database, menampilkan data dari tabel, memfilter data dengan klausa WHERE, dan mencegah SQL injection. Dengan menguasai dasar-dasar ini, Anda dapat membangun aplikasi web dinamis yang kuat dan aman. Ingatlah untuk selalu mempraktikkan apa yang telah Anda pelajari dan terus belajar untuk meningkatkan keterampilan Anda dalam pengembangan web PHP.

Selamat mencoba dan semoga berhasil!

Comments

  1. мориарти сайт mega
    мориарти сайт mega
    3 weeks ago
    Mega - это идеальный способ делать покупки без лишних забот. В ассортименте Мега есть всё: от современных гаджетов до эксклюзивных товаров. Благодаря быстрой доставке и легкому возврату товаров, мориарти сайт mega гарантирует, что покупки не доставят вам хлопот. Совершая покупки на mega sb официальный, вам доступны ежедневные скидки, специальные предложения и много других бонусов. Не теряйте время - совершайте покупки умнее и быстрее с Мега уже сегодня!. https://xn--mea-sb-j6a.com — что такое мега сайт
  2. ритуальные принадлежности москва
    ритуальные принадлежности москва
    3 weeks ago
    This information is worth everyone's attention. How can I find out more?
  3. Mulund West Escorts at Rs 5000 Let your self feel Complete with Us
    Mulund West Escorts at Rs 5000 Let your self feel Complete with Us
    3 weeks ago
    You actually make it appear really easy together with your presentation but I find this topic to be really something that I believe I would never understand. It kind of feels too complicated and very large for me. I'm looking ahead in your next submit, I'll attempt to get the grasp of it!
  4. https://tinyurl.com/2xd9hovp
    https://tinyurl.com/2xd9hovp
    3 weeks ago
    Great blog! Is your theme custom made or did you download it from somewhere? A theme like yours with a few simple tweeks would really make my blog stand out. Please let me know where you got your theme. Thanks https://tinyurl.com/ylp5rfgb eharmony special coupon code 2025
  5. online game
    online game
    3 weeks ago
    Have you ever considered writing an e-book or guest authoring on other websites? I have a blog based on the same topics you discuss and would really like to have you share some stories/information. I know my readers would value your work. If you are even remotely interested, feel free to send me an email.
  6. Live HK Lotto
    Live HK Lotto
    3 weeks ago
    I'd like to find out more? I'd like to find out more details.
  7. FM88
    FM88
    3 weeks ago
    https://fm88.football/
  8. royal x casino download
    royal x casino download
    3 weeks ago
    Great post.
  9. https://tinyurl.com/ywzs4a4o
    https://tinyurl.com/ywzs4a4o
    3 weeks ago
    I know this web site provides quality depending articles or reviews and other information, is there any other web page which presents these kinds of information in quality? Eharmony special coupon code 2025 https://tinyurl.com/yvodnsan
  10. github.com
    github.com
    3 weeks ago
    I'm extremely inspired along with your writing talents and also with the format on your weblog. Is this a paid subject or did you customize it your self? Anyway stay up the excellent high quality writing, it's rare to see a great weblog like this one today..
  11. Túi xách công sở nữ
    Túi xách công sở nữ
    3 weeks ago
    Everything is very open with a clear explanation of the challenges. It was definitely informative. Your website is extremely helpful. Thanks for sharing!
  12. التسويق عبر البريد الإلكتروني في العراق
    التسويق عبر البريد الإلكتروني في العراق
    3 weeks ago
    https://iraq.creative4all.com/ar/our-services/email-marketing-in-iraq-ar/ التسويق عبر البريد الإلكتروني في العراق التسويق عبر البريد الإلكتروني في العراق
  13. 신통
    신통
    3 weeks ago
    This page truly has all of the information and facts I needed concerning this subject and didn't know who to ask.
  14. A片
    A片
    3 weeks ago
    I've been surfing on-line greater than three hours today, yet I never found any interesting article like yours. It is beautiful value enough for me. Personally, if all website owners and bloggers made excellent content as you did, the web can be a lot more helpful than ever before.
  15. Электротехнические испытания
    Электротехнические испытания
    3 weeks ago
    Электролаборатория №494 в Перми - испытания и измерения электрооборудования
  16. 인스타 팔로워 늘리는 팁
    인스타 팔로워 늘리는 팁
    3 weeks ago
    Have you ever thought about publishing an e-book or guest authoring on other websites? I have a blog centered on the same information you discuss and would really like to have you share some stories/information. I know my readers would enjoy your work. If you aree even remotely interested, feel free tto shoot me an e-mail. 인스타 팔로워 늘리는 팁
  17. Dinasti138
    Dinasti138
    3 weeks ago
    Dinasti138 merupakan daftar situs web permainan resmi terbaik hari ini dengan fitur baru depo kredit cepat via qris, kini telah menjadi pelopor utama di tanah air karena menjadi situs terfavorit tahun 2025.
  18. https://tinyurl.com/yt83ggsk
    https://tinyurl.com/yt83ggsk
    3 weeks ago
    I am regular visitor, how are you everybody? This article posted at this web site is actually fastidious. Eharmony special coupon code 2025 https://tinyurl.com/2xd9hovp
  19. click here
    click here
    3 weeks ago
    That is a very good tip especially to those fresh to the blogosphere. Brief but very precise info… Many thanks for sharing this one. A must read post!
  20. https://tinyurl.com/yneylc4d
    https://tinyurl.com/yneylc4d
    3 weeks ago
    I'm really impressed with your writing skills and also with the layout on your weblog. Is this a paid theme or did you modify it yourself? Anyway keep up the excellent quality writing, it is rare to see a nice blog like this one these days. https://tinyurl.com/yu2htvml eharmony special coupon code 2025
  21. https://polotsk-portal.ru/polnaja-abdominoplastika-v-koree-pokazanija-i-protivopokazanija.dhtm
    https://polotsk-portal.ru/polnaja-abdominoplastika-v-koree-pokazanija-i-protivopokazanija.dhtm
    3 weeks ago
    Choosing top-notch medical care and cosmetic procedures requires
  22. https://tinyurl.com/yt83ggsk
    https://tinyurl.com/yt83ggsk
    3 weeks ago
    Very nice post. I just stumbled upon your weblog and wanted to say that I have really enjoyed browsing your blog posts. After all I will be subscribing to your rss feed and I hope you write again very soon! https://tinyurl.com/yvodnsan eharmony special coupon code 2025
  23. https://tinyurl.com/ymjk7uac
    https://tinyurl.com/ymjk7uac
    3 weeks ago
    No matter if some one searches for his vital thing, so he/she wishes to be available that in detail, so that thing is maintained over here. https://tinyurl.com/yvodnsan eharmony special coupon code 2025
  24. Norlios Platform
    Norlios Platform
    3 weeks ago
    Yesterday, while I was at work, my sister stole my iphone and tested to see if it can survive a thirty foot drop, just so she can be a youtube sensation. My iPad is now destroyed and she has 83 views. I know this is completely off topic but I had to share it with someone!
  25. Ncrrdrype
    Ncrrdrype
    3 weeks ago
    And kick your ailments. Guaranteed online proven methods with <a href=https://metoprololvslopressor.com/>www.metoprololvslopressor.com</a> pills you need to comparison shop.
  26. Ncrrdrype
    Ncrrdrype
    3 weeks ago
    And kick your ailments. Guaranteed online proven methods with <a href=https://metoprololvslopressor.com/>www.metoprololvslopressor.com</a> pills you need to comparison shop.
  27. Ncrrdrype
    Ncrrdrype
    3 weeks ago
    And kick your ailments. Guaranteed online proven methods with <a href=https://metoprololvslopressor.com/>www.metoprololvslopressor.com</a> pills you need to comparison shop.
  28. Ncrrdrype
    Ncrrdrype
    3 weeks ago
    And kick your ailments. Guaranteed online proven methods with <a href=https://metoprololvslopressor.com/>www.metoprololvslopressor.com</a> pills you need to comparison shop.
  29. https://tinyurl.com/yvodnsan
    https://tinyurl.com/yvodnsan
    3 weeks ago
    It's amazing to pay a visit this web site and reading the views of all colleagues concerning this article, while I am also keen of getting knowledge. https://tinyurl.com/yvodnsan eharmony special coupon code 2025
  30. https://tinyurl.com/2xd9hovp
    https://tinyurl.com/2xd9hovp
    3 weeks ago
    This paragraph is genuinely a good one it helps new internet users, who are wishing for blogging. Eharmony special coupon code 2025 https://tinyurl.com/yt83ggsk
  31. https://tinyurl.com/yneylc4d
    https://tinyurl.com/yneylc4d
    3 weeks ago
    There's definately a great deal to learn about this topic. I love all of the points you have made. https://tinyurl.com/yp2uf8pf eharmony special coupon code 2025
  32. dog poop clean up
    dog poop clean up
    3 weeks ago
    No matter if some one searches for his required thing, therefore he/she wishes to be available that in detail, thus that thing is maintained over here.
  33. https://tinyurl.com/yt83ggsk
    https://tinyurl.com/yt83ggsk
    3 weeks ago
    Good way of explaining, and fastidious paragraph to obtain information regarding my presentation subject, which i am going to present in university. Eharmony special coupon code 2025 https://tinyurl.com/ypubsnjg
  34. https://tinyurl.com/ymjk7uac
    https://tinyurl.com/ymjk7uac
    3 weeks ago
    Thank you for some other great article. The place else may anyone get that kind of info in such a perfect manner of writing? I have a presentation next week, and I am on the search for such info. https://tinyurl.com/yvodnsan eharmony special coupon code 2025
  35. Roman
    Roman
    3 weeks ago
    I go to see day-to-day a few web sites and information sites to read posts, but this web site provides quality based articles.
  36. http://winkler-martin.de/messages/61849.html
    http://winkler-martin.de/messages/61849.html
    1 week ago
    Thanks for the good writeup. It in fact used to be a leisure account it. Glance complex to far added agreeable from you! However, how can we keep in touch?
  37. https://tinyurl.com/u48j387k
    https://tinyurl.com/u48j387k
    6 days ago
    Excellent way of explaining, and pleasant article to get data concerning my presentation subject, which i am going to deliver in institution of higher education.

Leave a Reply

Your email address will not be published. Required fields are marked *

© 2025 VintageFashion