parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 14.03.2009 04:12 / 14.03.2009 04:14

мы считаем, что символу \r в html-е не место.
именно поэтому парсер, при считывании файлов в виндовой кодировке, удаляет эти символы (и добавляет их при записи).
также он их удаляет при загрузке по http (если загрузка не в binary).

соотв. вопрос в том, как у вас эти символы попали в БД? минуя парсер?


ладно, как бы они туда ни попали, сейчас вопрос в том, что с ними делать.

что должно быть с эскейпингом этих символов при выдаче их в js я сейчас не знаю, т.к. сам не сталкивался. нужно идти и читать доки. если этот символ разрешен и метод его эскейпинга определён -- очевидно, что упомянутый taint должен этот эспейпинг делать.

удалять все \r, в общем случае, нельзя, т.к. очень может быть, что какому-то js потребуется исходный текст, содержащий эти \r.

если вам этот символ не нужен, но он присутствует в БД, то возможно будет несложно создать дочерний класс, который будет перед вызовом методов базового класса удалять этот символ replace-ом.