Пример:
Изначально люди отправляют свои сообщения в чат - фильтрую mysql_real_escape_string и записываю в базу (защита от sql inj)
$text=mysql_real_escape_string($_POST['text']);
mysql_query("INSERT `chat` SET `name`='{$_SESSION['name']}', `words`='$words'");
Далее эти сообщения выводятся на все общее обозрение - фильтрую htmlspecialchars и вывожу
$chat1=mysql_query("SELECT * FROM `chat` ORDER BY `id` DESC LIMIT 100");
while($chat=mysql_fetch_array($chat1)){
$name=$chat['name'];//Имя отправителя можно не фильтровать так как оно было отфильтровано при регистрации - спец символы были все удалены кроме _-A-Za-zА-Яа-я
$text=$chat['text'];
$text=htmlspecialchars($text);
echo "Отправитель: $name<br/>
Сообщение: $text";
//В $name возможна XSS? или SQL inj при удаление всего кроме _-A-Za-zА-Яа-я?
}
Может хоть как то можно обойти htmlspecialchars? и провести XSS атаку? если да то покажите ваши примеры обхода пожалуйста