【问题标题】:Retrieve special character in php send via ajax检索php中的特殊字符通过ajax发送
【发布时间】:2012-06-19 04:10:57
【问题描述】:

我正在使用 ajax jquery 向 php 发送数据, 作为数据,我将一个 url 作为来自 ajax 的字符串发送,其中包含特殊字符,即“&” 所以我没有得到完整的 url,即我的数据直到 '&' 才被检索到,只有 rest id 被忽略并且没有显示。

下面是我的 ajax 和 php 代码:

dummytest.php

$temp=$_POST['address'];
echo $temp;

test.html (ajax发送数据)

    var send="http//192..../oracle/master.php?result=2&table=1"
    $.ajax({
        type: "POST",
        url: "dummytest.php",
        dataType: "text",
        data: send,
        success: onSuccess,
        error: onError
         }); 

我正在发送数据“发送”,即一个 url 作为字符串数据 但我只在我的php中收到它,直到“&”,即

http//192..../oracle/master.php?result=2

谁能告诉我如何获取完整的数据/网址?

【问题讨论】:

  • 尝试使用%26 代替&

标签: javascript php ajax special-characters send


【解决方案1】:

您将 URL 作为 POST 请求的整个正文发送,而在 PHP 端,您希望在 address 参数中找到它。您应该将 Javascript 端的 send 更改为

var send = { address: 'http://...' }

jQuery 会负责在请求正文中对其进行编码。

【讨论】:

  • 欢呼,我已经做了很多事情了 :))))))))) 我不知道我们也可以以这种方式直接使用 var
【解决方案2】:

使用 $(selector).serialize() 方法。 serialize() 方法通过序列化表单值来创建一个 URL 编码的文本字符串。

【讨论】:

    猜你喜欢
    • 2012-01-10
    • 1970-01-01
    • 2017-03-21
    • 1970-01-01
    • 1970-01-01
    • 2013-09-01
    • 1970-01-01
    • 2014-12-27
    • 2013-02-11
    相关资源
    最近更新 更多