2011-08-13 4 views
0

私はSymfony 1.4とDoctrine 1.2を使用しています。私は、プラグインhttp://www.symfony-project.org/plugins/sfCkPlugin をインストールし、私は、フォームからのネットのデータを追加する場合、これはOK作業していて、テンプレートでは、これは、たとえば私を見る:テンプレート内にhtmlタグを表示する - symfonyとCKEDITOR。どのように安全ですか?

<p><b>bold</b> <i>test</i></p> 

など

代わりの

大胆テスト

ここに何か追加する必要があります:getDesc()?>、しかし何ですか?

私が持っているデータベースのMySQLでは

<p> <strong>bold</strong> <u>test</u></p> 

これは安全でしょうか?

答えて

1

これは、symfonyの出力エスケープのために起こっています。

あなたはデータにgetRawValue()を呼び出すことによって、それを修正することができます:

$obj->getDesc()->getRawValue(); 

ベアあなたがこれを行う場合は、あなたが入力されている任意の他のHTML/Javascriptを/安全であることを保証する必要があることを念頭にページに出力する。それがバックエンドから来ているなら、おそらく大丈夫です。しかし、それがエンドユーザーから来ている場合は、安全にするようにしてください(XSS攻撃をブロックし、レイアウトを破るhtmlを防ぐなど)。大きな話題です!