PHP Form Handling: Memproses Data Form

Interaksi antara pengguna dan aplikasi web sebagian besar terjadi melalui form — form pendaftaran, login, komentar, hingga pencarian. Proses menerima dan mengolah data yang dikirim form inilah yang disebut PHP Form Handling. Menguasainya adalah langkah penting sebelum membangun fitur nyata yang melibatkan input pengguna.

Bagaimana Data Form Sampai ke PHP?

Setiap form HTML memiliki atribut method yang menentukan cara pengiriman data (post atau get) dan atribut action yang menentukan file tujuan. Ketika pengguna menekan tombol submit, browser mengirim data ke server, dan PHP menangkapnya melalui variabel superglobal $_POST atau $_GET.

Membuat Form Sederhana

<form method="post" action="">
  Nama: <input type="text" name="nama">
  Email: <input type="email" name="email">
  <button type="submit">Kirim</button>
</form>

Atribut name pada setiap input sangat penting — nilainya menjadi “kunci” untuk mengambil data di PHP.

Memproses Data Form

Sebelum mengolah data, pastikan form benar-benar sudah dikirim. Cara terbaik adalah memeriksa metode request:

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $nama  = $_POST["nama"];
    $email = $_POST["email"];
    echo "Halo, " . htmlspecialchars($nama);
}
?>

Kenapa htmlspecialchars() Penting?

Perhatikan penggunaan htmlspecialchars() saat menampilkan input. Fungsi ini mengubah karakter khusus seperti < dan > menjadi entitas HTML, sehingga mencegah serangan XSS (Cross-Site Scripting). Tanpa ini, penyerang bisa menyisipkan skrip berbahaya melalui input form.

Membersihkan Input dengan trim()

Pengguna sering tidak sengaja menambahkan spasi di awal atau akhir. Gunakan trim() untuk membersihkannya:

<?php
$nama = trim($_POST["nama"]);
?>

Form yang Mengirim ke Dirinya Sendiri

Praktik umum adalah membuat form yang memproses datanya di halaman yang sama (action=""). Ini memudahkan menampilkan pesan error tepat di dekat form.

Kesalahan Umum

  • Lupa atribut name pada input, sehingga datanya tidak terkirim.
  • Menampilkan input mentah tanpa htmlspecialchars(), membuka celah XSS.
  • Tidak memeriksa apakah form sudah dikirim, memunculkan warning “undefined index”.

Kesimpulan

Inti PHP Form Handling adalah menerima data dengan benar sekaligus menjaganya tetap aman. Selalu periksa metode request, bersihkan input dengan trim(), dan amankan tampilan dengan htmlspecialchars(). Materi berikutnya, validasi form, akan menyempurnakan proses ini.

Referensi: untuk penjelasan lebih mendalam, kunjungi dokumentasi resmi PHP (php.net).

Baca Juga

Ali Akbar

Software Developer yang fokus mengembangkan aplikasi berbasis Web dan Desktop. Senang mempelajari teknologi baru terutama di bidang web design dan web development.

View all posts by Ali Akbar →

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *