2014-11-06 41 views
0

我發送一個從ajax.js到test1.php的多維數組。但後來我不知道如何檢索我的test1.php中的多維數組。我發現了很多例子,但它們並不適合我。如何從jquery和ajax獲取多維數組傳遞的值?

ajax.js

answers = {}; 
answers[0] = {}; 
answers[0]['question_id'] = '12'; 
answers[0]['answer_id'] = '32'; 

$.ajax({ 
    type: "POST", 
    url: 'test1.php', 
    data: {answers: answers}, 
    //dataType: "json", 

    error: function(jqXHR, textStatus, errorThrown){ 
     alert(errorThrown); 
    }, 
    success: function(data){ 
     alert('success!'); 
    } 
}); 

test1.php

$a=$_POST['answers'][0]['answer_id']; 
echo "$a"; //display nothing, I wish to display '32' here 

欣賞任何幫助。謝謝!

更新:我包括圖書館和Ajax.js確實給了我一個提醒'成功'。所以這不是圖書館問題。再次感謝您的幫助!

+0

也許jQuery是在JSON發送。嘗試使用'json_decode'。嘗試傾銷'$ _POST'來確定你得到了什麼。 – 2014-11-06 03:55:26

+0

@SebastianOsuna'json_decode()'?沒有。你已經可以直接從'$ _POST'中獲取信息,不需要解碼任何東西,OP需要檢查的是PHP文件的路徑(如果它是正確的),並檢查控制檯瀏覽器是否有錯誤。並確保jquery確實在那裏 – Ghost 2014-11-06 03:56:57

+1

它工作..你有包括圖書館? – 2014-11-06 03:57:22

回答

0

試試這個 -

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
<script> 
answers = {}; 
answers[0] = {}; 
answers[0]['question_id'] = '12'; 
answers[0]['answer_id'] = '32'; 

$.ajax({ 
    type: "POST", 
    url: 'test1.php', 
    data: {answers: answers}, 
    //dataType: "json", 

    error: function(jqXHR, textStatus, errorThrown){ 
     alert(errorThrown); 
    }, 
    success: function(data){ 
     alert('success!'); 
    } 
}); 
</script> 

test1.php

<?php 
$a=$_POST['answers'][0]['answer_id']; 
echo "$a hello"; //display nothing, I wish to display '32' here 
+0

是的,我已經包含了庫和Ajax.js確實給了我一個'成功'的警報。所以這不是圖書館問題。再次感謝您的幫助! – Elise 2014-11-06 04:29:39

+0

是請求成功嗎? – 2014-11-06 04:31:16

+0

$ a爲空。在test1.php中沒有顯示。我認爲這可能不成功。 – Elise 2014-11-06 04:45:14