1

我正在尝试将 jquery 字符串传递给我的 cakephp 控制器,但我不断收到错误消息,提示 json_decode 需要一个字符串,但传递了一个数组。

这是我的ajax的代码:

var str = 'Data that i need';

    var jsonString = JSON.stringify(str);

    $.ajax({
        type: "POST",
        url: "http:/Configs/",
        cache: false,
        datatype: 'json',
        data: {data : jsonString},
        timeout: 100000,

        success: function(data) 
        {
            alert('Ok');
        }
    });

在我的控制器中,我试图像这样接收数据:

$value = json_decode($_POST['data']);

但我得到了上述错误任何想法如何解决这个问题将非常感谢。

4

2 回答 2

1

你确定你使用的网址是正确的吗?如果您使用的是 CakePHP,那么您为什么不使用$this->request->data?

尝试使用调试代码

pr($_POST); exit;

或者

pr($this->request); exit;

他们说什么?

于 2012-08-21T14:26:49.340 回答
1

尝试这个:

var str = 'Data that i need';

var jsonString = JSON.stringify(str);

var DataToSend = {};
DataToSend.data = JSON.stringify(jsonString);

$.ajax({
    type: "POST",
    url: "http:/Configs/",
    cache: false,
    datatype: 'json',
    data: JSON.stringify(DataToSend),
    timeout: 100000,

    success: function(data) 
    {
        alert('Ok');
    }
});
于 2012-08-21T13:05:55.920 回答