Definisi dan Fungsi Filter Input
Dalam pengembangan aplikasi web menggunakan PHP, filter input merujuk pada mekanisme untuk memvalidasi dan membersihkan data yang diterima dari pengguna (seperti input form, URL, atau cookie). Tujuannya adalah mencegah serangan keamanan seperti Cross-Site Scripting (XSS) dan SQL Injection dengan memastikan data yang masuk sesuai dengan format yang diharapkan.
Penting untuk membedakan antara validasi (memastikan data sesuai format, misal: email) dan sanitasi (menghapus karakter berbahaya dari data). PHP menyediakan ekstensi filter bawaan yang sangat efisien untuk menangani tugas ini.
Tabel Fungsi Filter Utama
| Fungsi | Kegunaan |
|---|---|
| filter_input() | Mengambil variabel eksternal dan memfilternya. |
| filter_var() | Memfilter variabel dengan filter tertentu. |
| filter_list() | Melihat daftar filter yang tersedia. |
Implementasi Teknis
Berikut adalah contoh penggunaan filter_input untuk mengambil data dari metode POST dengan validasi email:
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL); if ($email) { echo "Email valid: " . $email; } else { echo "Email tidak valid."; }Langkah-langkah Keamanan Input
- Identifikasi sumber data (INPUT_GET, INPUT_POST, INPUT_COOKIE).
- Tentukan jenis filter (FILTER_VALIDATE_EMAIL, FILTER_SANITIZE_STRING, dll).
- Selalu lakukan pengecekan hasil filter sebelum memproses data ke database.
- Gunakan prepared statements sebagai lapisan keamanan tambahan setelah data dibersihkan.
Penggunaan filter yang tepat adalah standar industri untuk menjaga integritas data dan keamanan server dari input yang tidak terduga atau berbahaya.