Jquery将JSON发布到PHP
我试图将JSON数据从jQuery传递到PHP,以便覆盖JSON文件。我遇到的问题是,我不知道如何判断PHP文件是否正在接收我发送的json。我有点新手 我现在有这个-它没有做的把戏,我有点卡住了。任何建议都很好。我得到了警告-‘正确’但PHP没有Jquery将JSON发布到PHP,php,jquery,json,Php,Jquery,Json,我试图将JSON数据从jQuery传递到PHP,以便覆盖JSON文件。我遇到的问题是,我不知道如何判断PHP文件是否正在接收我发送的json。我有点新手 我现在有这个-它没有做的把戏,我有点卡住了。任何建议都很好。我得到了警告-‘正确’但PHP没有 var testjson = [{ "name": 1, "myArray": [{ "0":"1", "2":"3" },{ "1":"2", "3":"4" }], "friends":40
var testjson = [{
"name": 1,
"myArray": [{
"0":"1",
"2":"3"
},{
"1":"2",
"3":"4"
}],
"friends":40
}];
$.ajax({
type: "POST",
url: "php/write.php",
data: testjson,
dataType: "html",
contentType : 'application/json; charset=utf-8'
}).done(function(data, status) {
alert('Right');
}).fail(function(data, status) {
alert("Wrong: " + status);
});
$value=json\u decode($\u POST);
打印(价值);
使用以下代码
var testjson =[{"name":1,"myArray":[{"0":"1","2":"3"},
{"1":"2","3":"4"}],"friends":40}];
var myString = JSON.stringify(testjson);
$.ajax({
type: "POST",
url: "write.php",
data: myString,
dataType: "html"
}).done( function (data, status) {
alert('Right');
})
.fail( function (data, status) {
alert("Wrong: "+status);
});
});
在php中
$json = json_decode(file_get_contents("php://input"));
print_r($json);
明白了
我知道这非常简单。谢谢你的帮助
$value = $_POST;
print_r($value);
那么,当您运行代码时会得到什么?您需要告诉我们问题所在。请尝试将此
数据类型:“html”
更改为数据类型:“json”
@vietnguyen09-该设置正是ajax请求所期望的。它对它发送的内容没有影响。在这种情况下,将其更改为json
很可能只会使jQuery抛出一个“解析错误”,因为它实际上并没有返回json字符串。那么您的问题是什么呢?哦,您正在设置“contentType”。从您的请求中删除该选项,PHP将正确地获取数据。然后在PHP中,只需执行print\r($\u POST)
(删除json\u decode()
)