[英]PHP not receiving JSON send by Ajax
我正在尝试使用Ajax将一些JSON数据发送到PHP文件。 这是我的JavaScript代码 :
function updateJSON(){
var xmlhttpa;
if (window.XMLHttpRequest){
xmlhttpa = new XMLHttpRequest();
} else {
xmlhttpa = new ActiveXObject("Microsoft.XMLHTTP");
};
xmlhttpa.onreadystatechange = function(){
if (xmlhttpa.readyState==4 && xmlhttpa.status==200){
console.log("Sent")
}
};
xmlhttpa.open("POST", "update.php", true);
xmlhttpa.send("json=" + JSON.stringify(json));
};
这是处理请求的PHP文件 :
<?php
$json = $_POST["json"];
file_put_contents('data.json', $json);
不幸的是,这不起作用。 我该如何修复我的代码?
拜托,没有jQuery。
谢谢!
此外,如果你投票,请告诉我为什么这样我可以改善这个问题。
在POST
时,应该添加设置Content-type
行。试试这个:
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
另外:
xmlhttp.send("json=" + encodeURIComponent(JSON.stringify(json)));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.