将json数据发送到php web服务
我正在向服务器发送此呼叫:将json数据发送到php web服务,php,jquery,json,web-services,Php,Jquery,Json,Web Services,我正在向服务器发送此呼叫: 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", suc
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)上,我有
只是为了检查我是否收到任何东西,但在检查Firebug中的响应后,我看到这个数组是空的
发送数据时我做错了什么
提前谢谢
PS我已经查看了以前关于这个主题的帖子,但是仍然有问题。print\r($\U post)
没有给出JSON响应。您知道不使用AJAX时请求的实际回复是什么样子吗
尝试echo-json\u-encode($\u-POST)代码>-这应该打印出一个有效的JSON
或者我可以补充一点,您可能忘记了PHP的
打开和关闭标记问题在于内容类型
试试这个:
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
Hmm,您是如何获得数据[“结果”]?sendnote.php脚本是否还有其他未显示的内容?或者只是打印($\u POST)?当我运行代码时,我可以看到正在发布的数据。昆汀,你是对的,我也看到了,但在Firebug中,我看到我的$\u POST是空的。这就是问题所在。这就是为什么我刚刚打印了r($\u POST),我想他在检查Firebug中的ajax请求。但是,如果sendnote.php只是print\r($POST),我认为你是对的;Gohn67,你说得对。我正在查看Firebug中的$u帖子。我的代码中有$jsonresponse=json_encode($_POST)和其他创建json响应的代码。在客户端,我收到了JSON响应,这显然是空$u POST的结果。
$(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
echo json_encode($_POST);
?>