2015-12-29 59 views
2

我有這樣的代碼,如何訪問郵寄請求中發送的數據?

var items = '{"items":[{"Desc":"item1"}]}'; 
items = JSON.parse(items); 
var data = items; 
$.post("send.php", function(data) { 
    alert("Data Loaded: " + data); 
}); 

如何獲得的物品?

這裏是我的PHP代碼,

<?php 
echo $_POST['items']; 
?> 

爲$ _ POST [ '項目'];正確?

+0

你嘗試和執行的代碼? – Epodax

+0

print_r($ _POST ['items']);檢查後的內容 –

+2

您沒有將數據傳遞給php代碼。試試這個''.post(「send.php」,{items:data},function(data)'' –

回答

0

試試這個

<?php 
    $data = json_decode(file_get_contents($_POST["items"]), true); 
    echo $data['items'][0]['Desc']; 
?> 
+0

爲什麼在這個評論中的負面點? – JMA

+0

這將工作,但它不是一個真正的問題的解決辦法,它使錯誤的代碼工作的一種方式.. – Svetoslav

0

您:

$.post("send.php", function(data) { 
    alert("Data Loaded: " + data); 
}); 

應該是:

$.post("send.php", data, function(data) { 
    alert("Data Loaded: " + data); 
}); 

第二個參數是你的POST數據應該是send.php

0

你需要在發佈之前將JSON.stringify數據傳遞。您的$.post函數看起來不正確。

var items = {items: [{Desc:'item1'}]};//'{"items":[{"Desc":"item1"}]}'; 
items = JSON.stringify(items); 
var data = items; 
$.post("send.php", data) 
    .done(function(data) { 
    alert("Data Loaded: " + data); 
    }); 

http://api.jquery.com/jquery.post/