【问题标题】:ajax post special charactersajax 发布特殊字符
【发布时间】:2009-12-23 18:26:35
【问题描述】:

如何传递包含“%”和“&”等字符的大字符串 通过ajax post到我的php页面?

换句话说,如何对它们进行 javascript 编码和 php 解码?

【问题讨论】:

    标签: javascript ajax special-characters encode


    【解决方案1】:

    encodeURIComponent() JavaScript 函数可用于转义键或值中的任何字符。

    PHP 会自动接收并解码到$_POST 数组中。

    数据的格式应该是Query String格式,具体是:

    Content-Type: application/x-www-form-urlencoded
    

    例如:

    Name=Joe&Age=23&City=Altoona
    

    如果您在每个键和每个值上使用encodeURIComponent(),然后将它们与= 连接起来,并按& 将它们分组,您将不会有任何进一步的问题。

    【讨论】:

      【解决方案2】:

      要在 javascript 中对它们进行编码,请使用 encodeUri 和 encodeUriComponent

      http://www.w3schools.com/jsref/jsref_encodeURIComponent.asp


      PHP 解码:

      http://php.net/manual/en/function.urldecode.php

      【讨论】:

        【解决方案3】:

        如果您在 XMLHttpRequest 的发送方法中使用 POST 参数,您实际上不需要编码或解码。只有 GET 需要这样和编码,因为它使用 URI 字段。 在 SQL 请求中使用此数据时应小心。小心注射。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-07-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-01
          • 2017-02-28
          • 2012-01-10
          相关资源
          最近更新 更多