Skip to content

emka.web.id

Menu
  • Home
  • Indeks Artikel
  • Tutorial
  • Tentang Kami
Menu

Belajar PHP: Melakukan filter Form HTML secara keseluruhan

Posted on June 30, 2011 by Syauqi Wiryahasana
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!
Seedbacklink

Recent Posts

TENTANG EMKA.WEB>ID

EMKA.WEB.ID adalah blog seputar teknologi informasi, edukasi dan ke-NU-an yang hadir sejak tahun 2011. Kontak: kontak@emka.web.id.

©2024 emka.web.id Proudly powered by wpStatically