好吧,所以這裏是我的JS/jQuery代碼,我的rate.php文件中只有一個print_r($_POST)
。問題是,$_POST
接受rated
作爲字符串"Array"
,而不是我定義的實際數組。如何糾正這段代碼,以便PHP將JSON輸入識別爲適當的數組,而不是字符串?POST,AJAX和PHP:JSON提交
var rated = {"key" : key , "value" : value};
$.ajax({
type: "POST",
url: $(location).attr('protocol') + "//" + $(location).attr('hostname') + "/ajax/rate.php",
data: {
"rated" : rated
},
success: function(data) {
alert(data);
}
});
這是我得到的輸出消息:
陣列 ( [額定] =>數組 )
致命錯誤:只有變量可以通過引用傳遞在.../ajax/rate.php on line X
編輯:實際上有多個變量rated
,但他們都不是陣列(因此沒有與他們的問題),所以我把它們剪下來的代碼上面爲簡潔起見。
實際上有更多的非常有效變量,但沒有一個是數組(因此它們沒有問題),所以爲了簡潔起見,我將它們從上面的代碼中刪除了。 – Matt
@Matt,那麼你期望的請求數據是什麼?因爲不是你傳遞參數'rated'的值是'{「key」:key,「value」:value}',HTTP不支持參數嵌套。 –