无法在PHP内部回显用ajax发送的POST参数



我在send方法中向index.php发送两个参数。但是php返回一个错误"Undefined index">echo$_POST[名称]

submit.addEventListener("click", function(e){
e.preventDefault(); 
var xhr = new XMLHttpRequest();
xhr.open("POST", "index.php", true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.onreadystatechange = function () {
if(xhr.readyState == 4 && xhr.status == 200) {
var result = xhr.responseText;
console.log(result);
}
}
xhr.send("fname=Henry&lname=Ford");
});

为了通过Ajax发送表单数据,您必须指定请求的内容类型。在您的情况下,它将是'application/x-www-form-urlencoded:

xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

所以你的代码是:

submit.addEventListener("click", function(e){
e.preventDefault(); 
var xhr = new XMLHttpRequest();
xhr.open("POST", "index.php", true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.onreadystatechange = function () {
if(xhr.readyState == 4 && xhr.status == 200) {
var result = xhr.responseText;
console.log(result);
}
}
xhr.send("fname=Henry&lname=Ford");
});

最新更新