我正在做这样的事情,我通过AJAX的帖子将变量传递给php脚本。它实际上是进入我的PHP并运行我的回声,但是当我打印$ _POST数组时它没有打印出来。
function ajaxFunction(data){
var ajaxRequest; // The variable that makes Ajax possible!
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.open("POST", "process.php", true);
ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajaxRequest.setRequestHeader("Content-length", data.length);
ajaxRequest.setRequestHeader("Connection", "close");
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
//var data = array();
//data = document.forms["order_form3"].getElementsByTagName("input");
}
}
ajaxRequest.send(data);
}
答案 0 :(得分:1)
我建议使用像firebug这样的插件,甚至是Chrome或Firefox的内置功能,以查看已发送的内容以及发布请求中收到的内容。 ajax响应不会打印在屏幕上的某个位置,因为您可能会从“正常”的http POST请求到php页面。它将作为ajaxRequest对象的一部分返回,您可以从那里获取它以使用Javascript来“打印”它。
答案 1 :(得分:0)
似乎您需要对参数进行编码,调用您的函数确实会提交您的数据,但是它们未绑定到另一端的变量。我毫不奇怪PHP抛弃你的数据。