2
我有一個讓我困惑的問題。我有一個發送json對象的ajax函數,並且我看到了在F12 Chrome頭中解析的JSON,並且我收到了成功警報。PHP沒有收到我的jQuery發送的AJAX AJAX
$(document).ready(function() {
var test = {'bob':'foo','paul':'dog'};
$.ajax({
url: "test.php",
type: 'POST',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(test),
success: function(data) {
alert("Bien: " + data);
},
failure: function(errMsg) {
alert("Mal: " + errMsg);
}
});
});
但在我的PHP頁面中,我看不到任何POST,任何東西。我可以看到我的帖子收到,但別的:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
echo "post"; //Result 'post'
}
foreach($_POST as $stuff) {
echo $stuff; //Nothing at all
}
print_r(json_decode($_POST["data"], true)); // Undefined index: data
在相同的代碼我用
$.post("test.php", { data: { name: "John", time: "2pm" } });
和作品,然後是一些與代碼相關的,但我實在看不出啥子是它。
謝謝你的幫助!
[在PHP處理JSON請求(http://stackoverflow.com/questions/3063787/handle-json-request-in-php) – Quentin
嘗試沒有可能重複JSON.stringify在你的ajax調用。 – Needpoule
當您檢查$ _POST ['bob']時會發生什麼?此外,你不應該需要json.stringify。 – Jonast92