【问题标题】:How do I pass objects and/or multi-dimensional arrays from Javascript to PHP如何将对象和/或多维数组从 Javascript 传递到 PHP
【发布时间】:2011-08-16 13:31:24
【问题描述】:

我正在尝试使用 XMLHttpRequest 创建帖子提交,但很难以有效的方式将值传递给 PHP。

【问题讨论】:

  • api.jquery.com/serialize 有什么问题?
  • 我想这并没有什么问题。我只是不使用 Jquery。我一直在寻找一种方法来模拟表单可以构建多维数据并提交它的方式。我想我可以不使用 JSON 来做到这一点。
  • 虽然它可能对学习很有用,但实际上很少有实时站点或 Web 应用程序生成原始 XMLHttpRequest。使用 jQuery 之类的库会更轻松,正如 Cyclone 指出的那样,它为您提供了表单序列化的额外好处。

标签: php javascript ajax multidimensional-array


【解决方案1】:

您的名字可能是您的答案,这一事实非常有趣。含义:JSON 序列化是 js 和 PHP 之间传递数组的一种非常好的方式。 PHP 从 5.2 版本开始就有原生的 json 函数。

分别为json_encodejson_decode

【讨论】:

  • 感谢您的回复。所以我尝试使用 json_decode;但我在将数据正确获取到 PHP 时遇到问题。在 Javascript 方面,我在数据上使用了 JSON.stringify。我将 AJAX 请求设置为使用 POST,但我似乎无法正确访问 $_POST 中的信息。感谢您的帮助。
【解决方案2】:

使用一些现有的库,如jQuery,然后你不需要编写自己的客户端,浪费时间支持不同的浏览器等。它比从头开始编写所有东西要容易得多(除非你想学习它)

【讨论】:

    【解决方案3】:

    我建议使用 JSON 格式和application/json MIME 类型传递您的数据。我确信 PHP 中有用于解析 JSON 数据的库。

    【讨论】:

      【解决方案4】:

      Jquery 确实使这变得容易。它实际上打开了一些方法来获取您的数据。

      如果您的数据填充 HTML 表单,您可以使用 Jquery 通过 POST 路由以编程方式将数据提交回服务器。

      或者,您也可以设置使用 GET 或 POST 请求的 AJAX 调用,或者正如其他章节所建议的,您可以将数据序列化为 JSON(JavaScript 对象表示法)并以这种方式提交。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-16
        • 2023-03-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多