2012-08-10 49 views
0

我需要填充由JavaScript函數創建的圖表。圖表應該填充MySQL DB數據。我在myquery.php中定義了SQL查詢。此php代碼返回應該用於創建圖表的數組。問題是如何執行myquery.php並獲得輸出數組,我可以在JavaScript函數內部進一步使用createChartControl如何在JavaScript函數中使用MySQL DB數據?

<script type="text/javascript" language="JavaScript"> 
function createChartControl(htmlDiv1) 
{ 
    // Draw chart 
} 
(function(){ 
    createChartControl('schedule'); 
})(); 
</script> 
+0

http://www.w3.org/TR/XMLHttpRequest/和它只是谷歌的用途:https://開頭www.google.com/search?q=xmlhttprequest – TheZ 2012-08-10 18:21:50

+0

Google AJAX瞭解更多信息 – 2012-08-10 18:23:16

+0

您是否需要在初始頁面加載後填充圖表,或者是否希望在初始頁面加載時填充數據(即使用PHP回聲一些JavaScript變量或對象聲明?) – 2012-08-10 18:24:02

回答

1

jQuery當談到AJAX時,您的生活將會變得如此簡單。如果您真的反對使用庫,您可以查看xmlhttprequest的示例,它可以在純javascript中使用。

的jQuery看起來是這樣的:

function ajaxCall(){ 

    $.ajax({ 
     url: 'myquery.php', 
     type: 'POST', 
     data: {any_var: var_value}, 
     success: function(data) { 
        var returned_array = $.parseJSON(data) 
        createChartControl(htmlDiv1, returned_array) 
        } 
    }) 
} 

基本上你發你想在any_var到myquery.php,檢索myquery.php該值與$_POST['any_var']任何數據,運行查詢,然後json_encode的數組,你想傳回給你的javascript,最後解析你返回的data成功函數是一個可用的javascript對象。現在,你可以做你想做的事情是什麼,但在我的例子中,你可以看到我發送returned_arraycreateChartControl()功能(這需要爲您的陣列添加的參數。

田田,AJAX魔術。

1

我強烈建議您在JS端使用jQuery庫(http://jquery.com/

1 - 沒有Ajax:(如果你的數據將可在頁面加載):

<script type="text/javascript" language="JavaScript"> 
var myData = <?php echo json_encode($myArray); ?>; 

function createChartControl(htmlDiv1) 
{ 
    // your code to draw chart 
    // read myData a fill the chart 
} 
(function(){ 
    createChartControl('schedule'); 
})(); 
</script> 

2 - 使用Ajax (我們荷蘭國際集團的jQuery):

function loadMyData(){ 
$.getJSON('ajax/myquery.php', function(data) { 
    var items = []; 

    $.each(data, function(key, val) { 
    items.push(val); 
    }); 

    $('<ul/>', { 
    'class': 'my-new-list', 
    html: items.join('') 
    }).appendTo('body'); 
}); 
} 

有用的網站: http://php.net/manual/pt_BR/function.json-encode.php
http://api.jquery.com/jQuery.getJSON/
Parse JSON in JavaScript?

相關問題