繁体   English   中英

如何使用javascript正确地转义数据以获取查询字符串以在PHP中进行解码[重复]

[英]how to properly escape data with javascript for query string for decoding in PHP [duplicate]

这个问题已经在这里有了答案:

我正在尝试创建一个查询字符串,该字符串将所有表单元素和输入的数据通过GET请求传递给PHP文件。

我在JavaScript中使用encodeURIComponent对输入字段名称以及字段值进行编码。

我遇到的是,当我在$ GET中正确接收它们时,字段值似乎传递得很好,但是字段名将用下划线(代替点(。 )。

例:

<input type="text" name="form.0.text.0" value="" />

这field.name将到达我的PHP脚本作为form_0_text_0代替form.0.text.0 ,而输入的文本(例如, this contains a lot of .... )将到达就好了。

我将以下代码用作查询字符串生成的一部分:

+ encodeURIComponent(field.name) + "=" + (field.type == "checkbox" ? (field.checked) : encodeURIComponent(field.value))

关于该怎么办的想法?

这就是PHP“保护您”。 如果您尝试传递包含点的GET变量,它们将被下划线代替。 请参阅获取PHP以停止替换'。 $ _GET或$ _POST数组中的字符?

如果您确实必须在名称属性中使用点,则有一种解决“保护”的方法: https : //stackoverflow.com/a/1939911/2397004

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM