使用GET将JavaScript数组发送到PHP脚本的最佳方法是什么?

Mil*_*kov 2 javascript php jquery

我有一个由jQuery驱动的交互式Web应用程序,用户可以在屏幕上操作可视对象.完成后,应将JavaScript对象的"状态"发送到PHP以存储到数据库中.我更喜欢使用GET,但使用POST提交数据的解决方案也是可行的.

我目前正在考虑使用类似base64编码的方法序列化所有JS对象,并使用类似的东西:

var str = encode_objects();
document.location = 'result.php?result='+str;
Run Code Online (Sandbox Code Playgroud)

但是,有些东西告诉我必须有一些更优雅的方式,而不是在JavaScript中编写我自己的base64编码函数.是不是已经内置到JavaScript中的东西可以完成这项工作?

更新: PHP中的解码不是问题.我知道如何在PHP中解码base64,JSON.问题是如何在JavaScript端编码数据.

AJAX是不可能的.它必须是一个干净的GET或POST与页面重新加载.

zom*_*bat 7

json_decode()应该在这里为你服务.

如果您只是将包含javascript对象的JSON表示的字符串附加到HTTP请求中,则可以在PHP中使用json_decode()并准备好PHP对象.

编辑:我应该提到这个页面有一个链接到Javascript JSON字符串,它将您的JS对象转换为必要的JSON.