Saran saya adalah untuk membangun fungsi untuk membersihkan semua input teks Anda dan fungsi untuk memeriksa semua output Anda yang berasal dari database atau sumber lain, seperti berikut:
<?php
// filter for user input
function filterInput($content)
{
$content = trim($content);
$content = stripslashes($content);
return $content;
}
//filter for viewing data
function filterOutput($content)
{
$content = htmlentities($content, ENT_NOQUOTES);
$content = nl2br($content, false);
return $content;
}
tergantung pada strategi Anda, Anda dapat menambahkan fitur tambahan ke filter atau menghapus beberapa. Tapi apa yang Anda miliki di sini cukup untuk melindungi Anda dari XSS.
EDIT: selain fungsi di atas, jawaban ini mungkin juga relevan sebagai bagian dari perlindungan situs web Anda.
Referensi ke metode yang berbeda:
- trim:http://php.net/manual/en/function. trim.php
- stripslashes:http://php.net/manual/en/function. stripslashes.php
- htmlentitas:http://php.net/manual/en/function. htmlentities.php
- nl2br:http://php.net/manual/en/function. nl2br.php
Sebaiknya lihat juga tautan berikut:
Dan yang terpenting adalah menyadari 10 risiko teratas dan mempelajarinya lebih lanjut.