Project

General

Profile

Bug(バグ) #2497

Updated by Maki Takahashi over 10 years ago

h3. Overview (現象)

opWidgetFormRichTextareaおよび、opWidgetFormRichTextareaを継承するwidgetを利用するフォームにおいて
HTML特殊文字(例:©)を実体参照( @©@ )で入力すると変換されてしまう。

h3. Causes (原因)

sfWidget::escapeOnce() から呼ばれる sfWidget::fixDoubleEscape() が原因。

<pre>
static public function escapeOnce($value)
{
return self::fixDoubleEscape(htmlspecialchars((string) $value, ENT_QUOTES, self::getCharset()));
}

static public function fixDoubleEscape($escaped)
{
return preg_replace('/&amp;([a-z]+|(#\d+)|(#x[\da-f]+));/i', '&$1;', $escaped);
}
</pre>

h3. 確認バージョン

OpenPNE 3.7.0-dev (master)
OpenPNE 3.6.1 (stable-3.6.x)
OpenPNE 3.4.17 (stable-3.4.x)

Back