簡體   English   中英

檢索從ajax發布請求發送的數據

[英]Retrieve data sent from ajax post request

我正在使用ajax發布請求發送JSON格式的數據,我想從發送數據的文件中檢索數據。 如果您不知道JSON變量中有多少個對象,也不知道鍵,則如何使用$ _POST [“ name”]檢索數據;

我目前正在使用的網站就像一個簡單的在線商店,客戶可以選擇很多次。 我現在將日期存儲在localStorage中。 JSON數據類似於{“ itemName”:“商品名稱”,“ number”:“他們想要的商品數量”},並且無法預期客戶購買了多少不同商品。 當按下placeOrder按鈕時,我想以JSON格式發送購買信息,並且想將其解析為php文件。

$(document).ready(function(){
    $(".placeOrder").click(function(){
        var purchaseInfo = {}; //make JSON formatted variable
        var key, item;
        //move all localStorage data (which contains the item and the number)
        //to purchaseInfo 
        for(var i=0; i<localStorage.length; i++){
            key = localStorage.key(i);
            item = localStorage.getItem(key);
            purchaseInfo[key] = item;
        }


        //ADDED THIS CODE
        purchaseInfo = {"productPurchased":purchaseInfo};

        //send the data to place_order.php 
        $.ajax({
            url: "place_order.php",
            data: purchaseInfo,
            method: "POST",
            success: function(data){
                alert("success");
                //change the page using location.href
                window.location.href = "place_order.php";
            },
            error: function(data){
                alert("failed");
            }
        });
    });
});

將purchaseInfo varibale發送到place_order.php之后,我不確定如何解析該變量的內容。有人可以幫我在這里得到想法嗎? 提前非常感謝您。

編輯:AJAX功能和如何I(試圖)localStorage的的數據移到JSON格式的可變purchaseInfo,如上所示。

在place_order.php中(我試圖在其中檢索JSON數據並進行更多計算,以便可以計算總價)

    <?php
        //this line below prints NULL           
        var_dump($_POST["productPurchased"]);

        //and this code below prints "I am empty"
        if("" == trim($_POST["productPurchased"])){
            echo "I am empty";
        }else{
            echo "I am filled";
        }

        //$purchaseInfo = $_POST['productPurchased'];
        //the below line of code prints "array(0) { } "
        var_dump($_POST);            
    ?>

在JavaScript中:

purchaseInfo = {'purchaseInfo': purchaseInfo};
$.ajax({ ...

在PHP中:

$purchaseInfo = $_POST['purchaseInfo'];
// Do smth with data in $purchaseInfo

現在在PHP中, $purchaseInfo是一個與localStorage中的項目相關聯的數組。

暫無
暫無

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

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