0

クエリ文字列を入力するフォームフィールドがあります。

これは、urldecodedである限りクリーンアップされ、欠陥のあるHTMLが作成されないようにhtmlentitiesをスローします。

言い換えると:

<input type="text" name="example" value="<?php echo htmlentities((urldecode($_GET["example"])); ?>" />

urldecodeプラスをスペースに変換しますが、誰かがクエリで本物のプラスを使用したい場合があります。

2つの質問:

  1. 上記の「安全」は注入などの点で十分です。
  2. urldecode本物のプラスを変換しない代替手段はありますか
4

1 に答える 1

0

配列内の文字列$_GETはすでにurldecodedされています。もう一度やるべきではありません。

一方、本当にクエリ文字列にプラスを挿入したい場合は、最初にそれをurlencodeする必要があります。

于 2011-11-29T22:14:44.590 に答える