PHP无法检索request.send

时间:2015-03-22 15:02:41

标签: javascript php

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

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

如果我包含这一行,PHP就会停止(实际上还没有在PHP文件中使用,除了这一行:

$South = $_POST['South'];

Javascript函数(早期在js文件中定义并填充了北,南,东和西。插入警报(南)有效,所以我不认为这是问题),

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);
}

1 个答案:

答案 0 :(得分:0)

request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

之后添加request.open('POST', url, true);

应该是这样的:

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) {

然后它会起作用。