Показать сообщение отдельно
  #14 (permalink)  
Старый 10.04.2016, 12:15
Профессор
Отправить личное сообщение для Маэстро Посмотреть профиль Найти все сообщения от Маэстро
 
Регистрация: 02.07.2010
Сообщений: 642

Сообщение от laimas Посмотреть сообщение
...оставляя сервер пассивным участником...
А Вы думаете, что сервер решит все проблемы?? Наивно.
Вы предложили использовать htmlspecialchars . Это преобразует специальные символы в HTML-сущности. А мне не надо обезвредить ВСЕ html-теги, сделав их тупо видимыми. К тому же в тексте, отправляемом с сервера есть полезные html-теги, которые должны как положено отработать на клиенте.

Я ещё мог бы согласиться с Вами, если бы предложили использовать strip_tags (удаляет HTML и PHP-теги из строки).
Однако, из-за того, что strip_tags() не проверяет валидность HTML, то частичные или сломанные теги могут послужить удалением большего количества текста или данных, чем ожидалось! Просто говоря в некоторых случаях клиент увидит чистую страницу. И это плохо. Сам браузер лучше распарсит такой html, т.к. нет лучше "серверного парсера", чем сам браузер!
Предположим, что скоро разработчики PHP напишут более умный серверный парсер, но... дело в том, что этого мало.

На самом деле задача не просто обеспечить защиту на стороне клиента, а еще и сделать умный разбор html-тегов: распарсить все их атрибуты и все их свойства, проверить валидность и прочее. Назовите мне хотя бы 1 серверный парсер для этого?

И если Вы "консервант", то попробуйте решить такую задачку (на стороне сервера):
в html-коде найти все теги IMG, проверить их width и если ширина указана в px, то заменить width на "100%".
111111<img width="2000px" style="width:2000px" src=http://site.net/pic.jpg>222222
Получится? - Сниму шляпу!

Сообщение от laimas Посмотреть сообщение
вы же пионер-первопроходец, а я консервант, вот вы и маетесь дурью.
меня оскорбили? придурком обозвали?? Колумб тоже был первопроходец. он тоже маялся дурью. жаль в те времена серверов ещё не было.. а мог бы воспользоваться..
Ответить с цитированием