Экранирование "с \ на HTML-тег не работает - PullRequest
0 голосов
/ 07 февраля 2012

Мой окончательный код выглядит следующим образом:

<a href="/galleries/hairtinsels/hairtinsel/hairtinsels.jpg" rel="shadowbox[gallery]" title="Hair Tinsels, 24 Colour Choices, 36\" Long">

Обратите внимание, что 36\" часть - " экранирована с \, поэтому он должен работать, верно?Нет, на shadowbox заголовок обрывается и просто говорит:

Мишура для волос, 24 варианта цвета, 36 \

Это ошеломляет ... какие-то идеи?

Этому удалось избежать с помощью функции addslashes() в PHP - эта галерея создается PHP-циклом через массив.

1 Ответ

3 голосов
/ 07 февраля 2012

Вам нужна правильная экранирующая функция для каждого контекста. А в HTML вам нужно htmlspecialchars(). Цитата в двойных кавычках должна быть &quot;. (Обычная строка C, экранированная обратной косой чертой, не работает в HTML / XML / SGML.)

Довольно часто вам также нужен параметр charset:

 htmlspecialchars($string, ENT_QUOTES, "UTF-8");
 // and ENT_QUOTES just in case you had single quote attributes
...