PHP Form Validation: Memvalidasi Input Form

Menerima data form saja tidak cukup — kita juga harus memastikan data tersebut valid sebelum diproses atau disimpan. Proses inilah yang disebut PHP Form Validation. Validasi yang baik mencegah data sampah masuk ke database dan melindungi aplikasi dari input berbahaya.

Kenapa Validasi di Sisi Server Wajib?

Banyak pemula mengandalkan validasi di sisi browser (HTML/JavaScript) saja. Padahal, validasi itu mudah dilewati. Validasi di sisi server (PHP) adalah garis pertahanan utama yang tidak bisa diakali pengguna, sehingga wajib ada.

Memeriksa Field yang Kosong

<?php
$error = [];
if (empty($_POST["nama"])) {
    $error["nama"] = "Nama wajib diisi";
} else {
    $nama = trim($_POST["nama"]);
}
?>

Kita mengumpulkan pesan error dalam sebuah array agar bisa menampilkan semua kesalahan sekaligus.

Validasi Format Email

Alih-alih membuat pola rumit, gunakan filter bawaan PHP:

<?php
if (!filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) {
    $error["email"] = "Format email tidak valid";
}
?>

Validasi Angka dan Panjang Teks

<?php
if (!is_numeric($_POST["umur"])) {
    $error["umur"] = "Umur harus berupa angka";
}
if (strlen($_POST["sandi"]) < 6) {
    $error["sandi"] = "Sandi minimal 6 karakter";
}
?>

Memproses Hanya Jika Valid

Setelah semua pengecekan, lanjutkan hanya jika tidak ada error:

<?php
if (empty($error)) {
    echo "Data valid, siap disimpan!";
    // simpan ke database...
}
?>

Menampilkan Pesan Error di Form

Tampilkan pesan dari array $error di dekat input yang bersangkutan agar pengguna tahu apa yang perlu diperbaiki:

<input type="text" name="nama">
<?php if (isset($error["nama"])) echo $error["nama"]; ?>

Kesalahan Umum

  • Hanya mengandalkan validasi JavaScript, yang mudah dilewati.
  • Berhenti di error pertama, padahal lebih ramah menampilkan semua kesalahan sekaligus.

Kesimpulan

Dengan PHP Form Validation yang baik, Anda mencegah data tidak valid dan melindungi aplikasi dari input berbahaya. Ingat: validasi di sisi server wajib, meski sudah ada validasi di sisi browser.

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 *