Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Makalah
  • Ke-NU-an
  • Kabar
  • Search
Menu

Belajar PHP: Melakukan filter Form HTML secara keseluruhan

Posted on June 30, 2011

Submitted Form, baik dengan metode GET maupun POST perlu di filter. Filter ini digunakan untuk mencegah penggunaan berbagai teknik injeksi dan intrusi keamanan data, seperti SQL Injection, XSS dll. Ada beberapa solusi yang biasa saya gunakan.

Yang pertama, membuat fungsi PHP yang melakukan filter data yang dikirim tersebut:
[sourcecode language=”php”]
function strfilter($input)
{
$input=trim($input);
$input=strip_tags($input);
$input=nl2br($input);
$input=addslashes($input);
$input=stripslashes($input);
$input=str_ireplace("’", "%", $input);
$input=str_ireplace( "”", ‘%’, $input );
$input=str_ireplace( ‘""’, ‘%’, $input );
$query = preg_replace( ‘|(?<!%)%s|’, "’%s’", $input );
$input=htmlentities($input, ENT_QUOTES);
$input=ltrim($input);
$input=rtrim($input);
return $input;
}
[/sourcecode]

Untuk penggunaanya cukup mudah:
[sourcecode language=”php”]
$data_terfilter = strfilter($_POST[‘judul_berita’);
[/sourcecode]

Nah, solusi ini efektif jika digunakan pada form dengan elemen yang sedikit, jika terdiri dari banyak elemen cukup menyulitkan juga. Untuk itulah, buatlah sebuah fungsi baru yang digunakan untuk melakukan filtering form HTML secara keseluruhan.

[sourcecode language=”php”]
function filter_submittedform($submitted_forms){
$array = array();
foreach(array_keys($submitted_forms) as $forms){
$array[$forms] = strfilter($submitted_forms[$forms]);
}
return $array;
}
[/sourcecode]

Untuk penggunaanya:
[sourcecode language=”php”]
$data_post = filter_submittedform($_POST);
//atau
$data_get = filter_submittedform($_GET);
[/sourcecode]

Balikan dari fungsi tersebut adalah sebuah array dengan isi yang telah terfilter. Sekarang anda bisa langsung melakukan pengolahan lebih lanjut array ini ke database tanpa perlu difilter lagi atau khawatir mengandung script injection.

Selamat mencoba!

Terbaru

  • Profil Farida Farichah, Wakil Menteri Koperasi Kabinet Merah Putih Reshuffle 17 September 2025
  • Ini Info Terbaru Pencairan BSU BPJS Ketenagakerjaan 2025!
  • Cara Reset Printer Epson L3110 2025
  • WhatsApp Tiba-tiba Keluar dan Meminta Verifikasi: Apa yang Harus Dilakukan?
  • Bisakah Saldo BNI Kamu Nol? Fakta dan Cara Mengatasinya
  • Inilah Tanda-tanda Chat Audio di Grup WhatsApp Sudah Disadap
  • Cara Mengatasi Tidak Bisa Live Instagram Karena Tidak Memenuhi Syarat
  • 7 Spek Laptop yang Ideal untuk Coding & Ngoding Web/App
  • Keuntungan dan Kerugian Menggunakan PayPal: Panduan Lengkap
  • Cara Menggunakan Stellarium Web
  • Cara Menghapus Data KTP Pribadi di Pinjol yang Belum Lunas
  • Cara Mengganti Nomor TikTok yang Tidak Aktif atau Hilang Tanpa Verifikasi
  • Cara Menggunakan BCA PayLater Terbaru 2025
  • Cara Mendapatkan IMPoint Indosat IM3 Ooredoo Gratis via MyIM3
  • Apa Arti TikTok ‘Shared With You’?
  • Cara Menghapus Data KTP di Pinjol: Panduan Lengkap
  • Cara Download WhatsApp GB Terbaru 2025 – Fitur Lengkap & Aman
  • Review WhatsApp Beta: Apakah Aman? Cara Instal dan Cara Keluar
  • Bebong: Makna, Asal Usul, dan Penggunaan dalam Bahasa Indonesia
  • Spinjam dan Spaylater: Apa yang Terjadi Jika Terlambat Membayar dan Bisakah Meminjam Lagi?
  • Cara Download dan Menonton Dood Stream Tanpa Iklan – Doods Pro
  • Cara Menghentikan dan Mengatasi Pinjol Ilegal
  • Kode Bank BRI untuk Transfer ke PayPal
  • Cara Menyadap WhatsApp Tanpa Aplikasi dan Kode QR
  • Apa yang Terjadi Jika Telat Bayar Shopee PayLater?
  • Telat Bayar Listrik 1 Hari: Apa yang Terjadi?
  • Cara Mengunduh Foto Profil WhatsApp Teman di Android, iPhone, dan PC/Mac
  • Rekomendasi Aplikasi Edit Foto Ringan Terbaik untuk PC Windows dan macOS
  • Cara Membeli Diamond Mobile Legends Menggunakan Pulsa Telkomsel
  • Tutorial Menggunakan Aplikasi Dana: Cara Top Up Dana dengan Mudah, Cepat, dan Murah untuk Pemula
  • Profil Farida Farichah, Wakil Menteri Koperasi Kabinet Merah Putih Reshuffle 17 September 2025
  • Ini Info Terbaru Pencairan BSU BPJS Ketenagakerjaan 2025!
  • Cara Reset Printer Epson L3110 2025

©2025 emka.web.id | Design: Newspaperly WordPress Theme