2013-03-22 96 views
0

那麼我已經嘗試了很多方法,並且我一直得到相同的錯誤。我有這樣的JSON字符串:發佈數組內的多個Json對象到PHP?

[{"cart":{"itemid":"2","itemAmount":"2"}},{"cart":{"itemid":"3","itemAmount":"1"}}] 

我通過它與這個PHP:

$.post(
    "order/process.php", 
    { finalOrderItems: myJsonString}, 
    function(data){ 
     console.log("response - "+ data); 
    } 
); 

用於測試的簡單功能。

但響應的就是這是一個NULL

噢,現在我只有這個服務器端:

$finalOrderItems = json_decode($_POST["finalOrderItems"]); 
var_dump($finalOrderItems); 

任何幫助嗎?感謝

+0

但我嘗試json_encode的樂趣,而字符串正在通過..當然是錯誤的格式。 – jycr753 2013-03-22 18:38:59

+0

我已驗證json – jycr753 2013-03-22 18:39:22

+0

執行var_dump($ _ POST [「finalOrderItems」])並查看所得結果。 – Musa 2013-03-22 18:40:19

回答

0

在這種情況下。這保存:

php_value magic_quotes 0 
php_flag magic_quotes off 
php_value magic_quotes_gpc 0 
php_flag magic_quotes_gpc off 

感謝@Musa的幫助

0

它會幫助你的。使用ajax,它更好。 編輯:如果你的字符串是數組'data'中鍵值的var,則替換這些可引用的對象,並放上一個var。例如:data: {'finalOrderItems': myJsonString}

$(document).ready(function() { 
      $.ajax({ 
       // GET or POST 
       type: 'GET', 
       url: "json.php", 
       data: { 'finalOrderItems': 'myJsonString'}, 
       dataType: 'json', 
       success: function(data) { 
        if(data.length) { 
         for(var i = 0; i < data.length; i++) { 
          var dataX = data[i]; 
          console.log('itemid: ' + dataX.cart.itemid[0] + ' - amount: ' + dataX.cart.itemAmount[0]); 
         } 
        } 
       } 
      }); 
     });