2013-03-26 166 views
0

這裏是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

回答

1

除非這只是一個錯字,我覺得你的問題是在該位:

 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

0

與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

相關問題