PHP无法检索request.send


PHP not able to retrieve request.send

我是PHP和Javascript的新手,在将谷歌地图边界发送到运行SQL以查找边界内地址并生成用于放置标记的XML的PHP时遇到了一些困难。

我得到了一些帮助来清理我的代码,但问题仍然存在。问题是我的Javascript没有向PHP发送数据,或者PHP没有以正确的方式读取数据。

如果我插入这一行(除了这一行之外,PHP文件中还没有实际使用),PHP就会停止:

$South = $_POST['South'];

Javascript函数(North,South,East和West在js文件中定义和填充。插入alert(South)有效,所以我认为这不是问题所在),

function downloadUrl(url, callback) {
  var request = !window.XMLHttpRequest? new ActiveXObject('Microsoft.XMLHTTP') : new XMLHttpRequest; //changed this line to select the XMLHttpRequest by default and not use the activeX version when XMLHttpRequest is available.
  request.onreadystatechange = function() {
    if (request.readyState == 4) {
      request.onreadystatechange;
      callback(request, request.status);
    }
  };
  request.open('POST', url, true);
  request.send('South='+South+'&North='+North+'&West='+West+'&East='+East);
}

request.open('POST', url, true); 之后添加request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

应该是这样的:

request.open('POST', url, true);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.send('South='+South+'&North='+North+'&West='+West+'&East='+East);

并将if (request.readyState == 4) {替换为if (request.readyState == 4 && request.status == 200) {

然后它就会起作用。