来自php POST的Ajax响应
以下是我的ajax代码:来自php POST的Ajax响应,php,jquery,ajax,Php,Jquery,Ajax,以下是我的ajax代码: $.ajax({ url: url, type: type, data: {data:cart}, success: function(response){ console.log(response); }, error: function(error){ throw new Error('Did not work'); } }); 我的问题是,当我检查控制台时,响应是
$.ajax({
url: url,
type: type,
data: {data:cart},
success: function(response){
console.log(response);
},
error: function(error){
throw new Error('Did not work');
}
});
我的问题是,当我检查控制台时,响应是XML文档,而不是POST数据,后者是购物车。我已经尝试包含数据类型:'text',但这只是给我url中的代码,而不是POST数据。当我使用dataType:'json'时,我仍然得到XML文档。我的php代码是:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Send.php</title>
</head>
<body>
<?php
print_r($POST);
?>
</body>
</html>
Send.php
可能有什么问题,或者我需要添加什么???首先,您没有包含解释传递给服务器的cart源代码的端口,但我认为如果您以良好的格式编写,并且没有错误,那么它是一种XML数据类型 1-在服务器端,您可以这样做 A-使用此函数将数据转换为json格式
$POST=json_encode($POST);
print_r($POST);
B-转换为数组
$POST=json_decode(json_encode($POST));
print_r($POST):
2-在客户端,在将数据发送到服务器之前,您可以使用任何第三方脚本中的一个来将xml转换为json,github上还有更多
$.post('url',{data:'cart'},function(response){
console.log(response);
});
data - is the variable name
cart - its a static value right now (you can have dynamic value)
在服务器端,删除所有html并粘贴这些代码
<?php
print_r($_POST);
?>
尝试$\u POST
而不是$POST
,并观看此过程。清除php文件中的html。您只对实际的数据响应感兴趣…而不是html页面url:url
中的第二个url是什么,type:type
中的第二个url是什么,以及data:{data:cart}
中的购物车是什么?将元内容类型更改为text/json
并将print\r
编辑为echo json\u encode($POST)
@AnkitSingh这是我的代码,我没有包括url=that.attr('action'),type=that.attr('method'),车是我的一个阵列created@MirekKowieski我仍然得到相同的结果XML文档。您应该将其作为注释添加,而不是真正的答案。@meteor谢谢,但我已经看到了这个键入错误并修复了它,但我的问题仍然没有得到解决。还可以尝试在js代码中使用$\u GET
值或$.post()
函数。默认情况下,Ajax请求是使用GET HTTP方法发送的。“这对您有帮助吗?”Try?!??如果您不确定并想与OP联系,您应该发表评论,而不是作为答案发布。我确信您的数据是xml格式的,这是一个人如何编写的问题,他不知道自己的数据类型是什么,所以我将其转换为json对象,而不是他想要的。了解这两种情况的区别我们不在考场。我希望他了解发生了什么,而不是解决它,但我不理解代码中的$.post部分。请详细说明为什么$.post是这只是调用ajax的另一种方式。如果要使用get方法,可以使用$.get