AJAXポスト特殊文字
-
21-09-2019 - |
質問
私は、「%」と「&」のような文字を含む大規模な文字列を渡すにはどうすればよいです AJAXポストを通して私のPHPページに?
つまり、どのようにJavaScriptのエンコードそれらとPHPデコード彼らに?
解決
encodeURIComponent()
JavaScript関数は、キーまたは値のいずれかで、これらの文字をエスケープするために使用することができます。
PHPは$_POST
配列に自動的に受信して復号する。
データのフォーマットは、具体的には、クエリ文字列の形式でなければならない。
Content-Type: application/x-www-form-urlencoded
例えば、
Name=Joe&Age=23&City=Altoona
あなたは、各キーとそれぞれの値にencodeURIComponent()
を使用する場合は、、その後、=
によってそれらを&
とそれらを結合、グループ、あなたがそれ以上の問題を持っていません。
他のヒント
は、JavaScriptでそれらをコードencodeUriを使用するとencodeURIComponentで
http://www.w3schools.com/jsref/jsref_encodeURIComponent.aspする
<時間>PHPデコードます:
あなたがXMLHttpRequestののsendメソッドにPOSTパラメータを使用する場合は、
あなたは、実際に、エンコードやデコード何かする必要はありません。それはURIフィールドを使用するためにのみ、ニーズがなとエンコーディングGET。 SQLリクエストでこのデータを使用する際は注意が必要です。注射に注意してください。
所属していません StackOverflow