簡體   English   中英

將數組從 javascript 傳遞到 PHP

[英]Pass array from javascript to PHP

我正在嘗試將數組從 javascript 傳遞到 PHP。 錯誤消息說:

NULL 警告:在第 10 行的 /Library/WebServer/Documents/jsontest/json_receive.php 中為 foreach() 提供的參數無效

我的代碼有什么問題嗎?

<script>
function sendData(){
    var arr= [{  
        "city" : "Brussels",  
        "age" : 25  
    },
    {  
        "city" : "Antwerp",  
        "age" : 40  
    }]; 

    $.ajax({
       type: "POST",
       url: "json_receive.php",
       datatype: 'JSON',
       data: {arr: JSON.stringify(arr)},
       success: function(data){
            console.log("success:",data);
        },
       failure: function(errMsg) {
            console.error("error:",errMsg);
       }
    });
}

<?php
$data = json_decode($_POST["arr"]);
// will echo the JSON.stringified - string:
echo $_POST["arr"];
// will echo the json_decode'd object
var_dump($data);
//traversing the whole object and accessing properties:

print_r($data);
foreach($data as $cityObject){
    echo "City: " . $cityObject->city . ", Age: " . $cityObject->age . "<br/>";
}
?>

正如我在評論中所說,您的代碼看起來不錯並且有效(我已經對其進行了測試),問題在於您希望在頁面上打印某些內容,但您的Ajax success函數僅使用console

   success: function(data){
        console.log("success:",data);
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM