我需要将一个JavaScript对象传递给PHP,然后将其解码为关联数组。我已经在该网站上阅读了许多类似的问题,并在Google上搜索了几个小时。我的问题是我找不到涵盖双方的简单示例(javascript和PHP)。这是即时通讯试图做的简化版本。将数据作为键/值对发布是我可以通过的唯一方法。 HTML中有一个DIV用于显示答案。我要做的只是确认数据是否已超出此代码。

我所得到的只是“ POST数组已加载”,对我来说,这表明POST数组包含数据,但是我要么错误地对其进行了解码,要么不正确地访问了关联数组。我还阅读了JQUERY站点上的AJAX和POST页面,但是这些示例并没有使我了解所需的位置。如果我给strob指定一个简单的字符串值,它将完美传递。

        $(document).ready(function(){
            var obj={};
            obj.value1="foo";
            obj.value2="bar";
            var strob=JSON.stringify(obj);
            $.post("byterecord.php",{sendToValue: strob},
            function(data){
                $('#display').html(data.returnFromValue);
            },
            "json");
        });


byterecord.php

<?php
if (isset($_POST['sendToValue'])){

$aarray=json_decode($_POST['sendToValue'],true);
$strval=$aarray[value1];

}else{
$strval = "nothing.";
}

echo json_encode(array("returnFromValue"=>"POST array is loaded with " .$strval));

?>

最佳答案

只需直接传递对象:

$.post("byterecord.php", obj, function() {});


然后在php中,您可以通过以下方式获得它:

$value1 = $_POST['value1'];
$value2 = $_POST['value2'];

09-10 10:37
查看更多