2014-07-01 49 views
0

我有2頁。多維Javascript列表到PHP頁面

berechnungseingabe.php

,我產生一個多維的JavaScript Array

Array[19] 
3: Array[0] 
7: Array[0] 
11: Array[0] 
     Anzahl: "1" 
     Driving: 2380 
     Index: "13" 
     Latitude: 48.0078390267396 
     Longitude: 16.224982738494873 
     Walking: 1647 
13: Array[0] 
14: Array[0] 
... 
x: Array[0] 

當我在按鈕chlick

<button class="ui-btn ui-corner-all ui-btn-icon-left ui-shadow ui-icon-action" onclick="berechnenDerWege()">Berechnen</button> 

我想送數組的

berechnungsergebniss.php 

,我可以在此頁面上使用它作爲php數組。

jQuery,JavaScript,PHP有沒有辦法?

JSON.stringify(array); 

不工作,因爲我得到:

[[],空,[],NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL, []]

作爲結果。

+2

聽過[**'$的。 ajax' **](http://api.jquery.com/jquery.ajax/) –

+0

是的,但我不知道如何做到這一點$ .ajak。你可以給我發一個代碼示例嗎?請求 – Phil

回答

1

當然,是的。 存在JSON以輕鬆共享對象。

在函數調用berechnenDerWege()中,您必須使用javascript將數組編碼爲JSON。

JSON.stringify(myArray) 

它會輸出一個字符串,您可以通過Ajax或直接鏈接將其傳遞給您的PHP腳本。這取決於你的實現。

實施例沒有Ajax

function berechnenDerWege() { 
    var myArray = [1,2,3,[5,6,7]]; 
    document.location.href='berechnungsergebniss.php?data='+JSON.stringify(myArray); 
} 

爲了解碼用PHP使用json_decode數據()。

berechnungsergebniss.php

<?php $data = json_decode($_GET['data']); 
var_dump($data); 
?> 
+0

我得到這個結果 array(12){[0] => array(0){} [1] => NULL [2] => NULL [3] => NULL [4] => array(0 ){} [5] => NULL [6] => NULL [7] => NULL [8] => NULL [9] => NULL [10] => NULL [11] => array(0){} } – Phil

1

您可以使用jQuery AJAX:

$.ajax({ 
    type : 'post', 
    url : 'path/to/berechnungseingabe.php', 
    data : {array : JSON.stringify(yourArray)}, 
    complete : function(data){ 
     console.log(data); 
    } 
}); 

而在服務器端:

$yourArray = json_decode($_POST['array']); 
echo $yourArray; 
+0

在完成函數中,如何加載berechnungseingabe.php頁面,因爲我想使用該數組。 – Phil