将json数据发送到php web服务

我正在向服务器发送此电话:

var Message = {}; Message['islands'] = '1-15-13'; Message['newMessageText'] = 'this is test message'; $.ajax({ url: "sendnote.php", type: "POST", data: Message, dataType: "json", contentType: "charset=utf-8", success: function (data) { alert(data["result"]); }, error: function (data) { alert(data["result"]); } }); 

在服务器上(sendnote.php)我有

 print_r($_POST); 

只是为了检查我收到了什么,但在Firebug中的cchecking响应后,我看到这个数组是空的。

我在发送数据时做错了什么?

提前致谢!

PS我已经检查了关于这个主题的上一篇文章,但仍然有问题。

问题是contentType

试试这个:

jQuery的

 $(document).ready(function(){ var Message = {}; Message['islands'] = "1-15-13"; Message['newMessageText'] = 'this is test message'; $.ajax({ url: "sendnote.php", type: "POST", data: Message, dataType: "json", success:function(data) { alert("Islands: "+data.islands+", Message: "+data.newMessageText); }, error:function(data) { alert('error'); } }); }); 

PHP

  

print_r($_POST)不提供JSON响应。 你甚至不知道在不使用AJAX时请求的实际回复是什么?

尝试echo json_encode($_POST); – 这应该打印出有效的JSON。

或者我可以补充一点,你可能忘记了PHP的打开和关闭标签