Мой веб-сайт разрешает вести блоги, я использую textarea для сообщения в блоге, и мне нужно разрешить пользователям обмениваться такими вещами, как видео на YouTube (мне нужно разрешить тег iframe, чтобы сделать это) или отображать изображения с помощью тега img или используя ссылки с разрешением тега. Проблема в том, что мне нужно защитить сайт от XXS-атак, и поэтому я боюсь разрешить эти теги, есть ли способ обойти это?
Могу ли я использовать что-то вроде этого:
<?php
$string = "<b>hello world!</b>";
echo "without filtering:".$string;
echo "<br>";
$filtered = htmlspecialchars($string); // insert into database filtered
echo "After filtering:".$filtered;
echo "<br>";
$de_filtering = htmlspecialchars_decode($filtered); //retrieve from database and display
echo "After de-filtering:".$de_filtering;
?>
можно ли это сделать?