如何通过ajax post将包含'%'和'&'等字符的大字符串传递到我的php页面?
换句话说,如何对它们进行 javascript 编码和 php 解码?
如何通过ajax post将包含'%'和'&'等字符的大字符串传递到我的php页面?
换句话说,如何对它们进行 javascript 编码和 php 解码?
encodeURIComponent()
JavaScript 函数可用于转义键或值中的任何这些字符。
PHP 会自动接收并解码到$_POST
数组中。
数据的格式应该是Query String格式,具体为:
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 的发送方法中使用 POST 参数,您实际上不需要编码或解码某些东西。只有 GET 需要这样和编码,因为它使用 URI 字段。在 SQL 请求中使用此数据时应小心。小心注射。