似乎无法得到我的要求

问题描述:

这里是AJAX /道场我用它来打电话给我的PHP文件,要求从数据库表中的数据正确响应:似乎无法得到我的要求

 var _getWeatherInfo = function(){ 
    dojo.xhrget({ 

     url: "PHP/weather.php?ntown=" + _ntown, 

     handleAs: "json", 
     timeout: 5000, 

     response: function(response, weather_info) { 
      _refreshWeatherList 
     },   
     error: function(error_msg, weather_info) { 
      _handleError(error_msg); 
     } 
    }); 
} 

下面代码的下位这里是我用来查看返回的json数组对象(现在是javascript文件中的“weather_info”),并将对象中的数据添加到名为“_weather”的javascript数组中。

var _refreshWeatherList = function(weather_info) { 
     for (var i = 0; i < weather_info.length; i++) { 
     _weather.push(weather_info[i]); 
    } 
} 

我的问题是:

我不认为我实际上正从我的PHP请求作出适当的反应,当我运行我的应用程序为,然后单击我用提醒“_weather”按钮数组没有显示。我如何更改我的代码,以便正确地从我的请求获得响应。

感谢您的任何帮助。

编辑:PHP:

<?php 

$ntown = $_GET['ntown']; 

$weather = array(); 

$query="SELECT * FROM `weather` WHERE `town` = '$ntown'"; 
$result=mysql_query($query) or die ("Query to get data from table failed: ".mysql_error()); 

while($row = mysql_fetch_row($result)) { 

    $weather = $row; 
} 

echo json_encode($weather); 

mysql_close(); 

>

+0

可以使用的console.log(响应)得到的是什么由PHP发送控制台 – 2013-03-26 10:09:26

除非这只是一个错字,我觉得你的问题是在该位:

 response: function(response, weather_info) { 
     _refreshWeatherList 
    }, 

尝试将其更改为:

 load: function(response) { 
     _refreshWeatherList(response); 
    }, 
    // or just load: _refreshWeatherList 

调试问题像这样,学会使用浏览器的开发工具。在Firefox中,使用工具 - > Web开发人员 - > Web控制台,或在Chrome中单击F12并选择网络选项卡。 (其他浏览器通常有类似的工具)。这些会告诉你任何要求制成,并点击请求将让你看到的响应,头部等

+0

您好,我曾试图运行它负载:但它有同样的问题 – Corey 2013-03-26 19:24:16

+0

我已经改回到加载:,我通过WAMP运行我的程序并使用fi rebug控制台,我没有得到任何错误,但即时通讯也没有让我的数组显示。正如我在我的OP中所提到的,我认为我没有正确地将json数组发送到javascript。 – Corey 2013-03-26 19:28:17

+0

@Corey您是否看到在萤火虫中发出的请求?它是否会返回预期值?如果你在加载函数中加入'console.debug(response);',firebug控制台中是否有任何有趣的东西出现? – Frode 2013-03-26 19:46:19

与PHP代码的问题:

$weather = $row; 

应该

$weather[] = $row; 
+0

是不是只是在数组内创建和数组? – Corey 2013-03-26 21:04:45

+0

这不是你想要的吗? – 2013-03-26 21:05:38

+0

不,我想能够在我的javascript函数中访问我的json_encoded数组。目前似乎并没有发生 – Corey 2013-03-26 21:07:40