Sorunuza yanıt bulmak için öncelikle neyin ne işe yaradığını bilmeniz gerek. Ona göre arkadaşı yönlendirmelisiniz..
strip_tags kullanırsanız tüm html taglarını yok eder düz metin elde edersiniz ancak bu şekilde.
htmlspecialchars kullanırsanız
<p>test</p><script>alert('test')</script>metni için elde edeceğiniz yanıt şu olur
<p>test</p><script>alert('test')</script>gt;bunu ekrana basarsanız yine üstteki eklediğiniz metni düz yazı olarak gösterirsiniz. Tersine işlem yapıp decode edip ekrana basarsanız hiçbir şey yapmamış gibi aynı metni geri alırsınız sadece veritabanında tuttuğunuz metin encode edilmiş şekilde tutulur.
Bu iş için en temizi r10 da bile aktif olan
Markdown taglarını kullandırmanız ancak onunla uğraşmak istemezseniz kısa bir arayış sonucu elde ettiğim güvenli tagların içerisinde olduğu bir örneği aşağıda iletiyorum. function strip($var) {
$allowed = '<div><span><pre><p><br><hr><hgroup><h1><h2><h3><h4><h5><h6> <ul><ol><li><dl><dt><dd><strong><em><b><i><u> <img><a><abbr><address><blockquote><area><audio><video> <form><fieldset><label><input><textarea> <caption><table><tbody><td><tfoot><th><thead><tr> <iframe>';
return strip_tags($var, $allowed);
}