0

私はフォームを持っています。今のところ、必要な JavaScript などを入力できます。XSSなど

キャラクターのみを投稿できるように、ホワイトリストを作成するにはどうすればよいですか?

http://ある時点で、で始まるものをすべてに変換したいと思います

<a href="http://..."></a>

ありがとう

これは効率的ですか? http://htmlpurifier.org/

4

2 に答える 2

7

jQueryまたはJavascriptが推奨されます

ええと、いや、それはできませんね。javascriptを使用してデータを「サニタイズ」したとしても、だれも

  • JavaScriptをオフにする
  • ブラウザの開発者コンソールを使用してデータを混乱させる
  • ブラウザなしで直接POSTを実行する

つまり、サーバー側で検証/サニタイズを実行する必要があります。Javascript検証は、ユーザーのエクスペリエンスを向上させるためにあります(たとえば、無効な入力に関するフィードバックを即座に提供することによって)。

于 2010-11-17T08:21:39.753 に答える
1

しかし、それでも、多くの高負荷アプリケーションでは、開発者は部分的にクライアント側の検証を使用します(ただし、すべての入力はdbへの書き込み用に準備する必要があります)。

PHPを使用するので、$ _ POST値をhtmlspecialchars()、mysql_real_escape_string()などで解析することをお勧めします。

正規表現を使用して、「http://」で始まるものをリンクに変換する必要があります(まあ、より簡単なexplode('。'、$ _POST ['yourInput'])を使用することもできます)。

于 2010-11-17T09:12:25.943 に答える