通过php创建Javascript数组

通过php创建Javascript数组,javascript,php,arrays,Javascript,Php,Arrays,在这件事上花了令人尴尬的几个小时后,我仍然找不出答案。我有一个Javascript/HTML程序,其中有一个很大的动态表,表的单元格中有很多按钮。我想在用户完成页面后将用户选择的按钮发送到数据库。然后,我将在接收php程序中使用它们来显示图形。我已经将按钮的所有值放入一个Javascript数组中,所以现在我想发送整个数组,然后在新程序中将它们用作Javascript数组。每次我尝试这个,都没有结果。下面是一个基于我在stackoverflow上发现的示例: 发送程序: <html>

在这件事上花了令人尴尬的几个小时后,我仍然找不出答案。我有一个Javascript/HTML程序,其中有一个很大的动态表,表的单元格中有很多按钮。我想在用户完成页面后将用户选择的按钮发送到数据库。然后,我将在接收php程序中使用它们来显示图形。我已经将按钮的所有值放入一个Javascript数组中,所以现在我想发送整个数组,然后在新程序中将它们用作Javascript数组。每次我尝试这个,都没有结果。下面是一个基于我在stackoverflow上发现的示例: 发送程序:

<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
</head>
<script>
var ourObj={};
ourObj.data="4";
ourObj.arPoints = [{'x':1, 'y': 2},{'x': 2.3, 'y': 3.3},{'x': -1, 'y': -4}];
$.ajax({
   url: 'testb2.php',
   type: 'post',
   data: {"points" : JSON.stringify(ourObj)},
   success: function(data) {
        alert("success");
   }
});
</script>
</html>
<?php>
// Test if our data came through
echo "starting";
if (isset($_POST["points"])) {
    // Decode our JSON into PHP objects we can use
    $points = json_decode($_POST["points"]);
    // Access our object's data and array values.
    echo "Data is: " . $points->data . "<br>";
    echo "Point 1: " . $points->arPoints[0]->x . ", " . $points->arPoints[0]->y;
    $servername = "localhost";
    $username = "xxx";
    $password = "yyy";
    $dbname = "zzz";
    $conn = mysqli_connect($servername, $username, $password, $dbname);
    // Check connection
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());    
    }
    $sql = "
        INSERT INTO FootprintAction(UserID, ActionValue, fpID)
        VALUES (?, ?, ?);
    ";
    if ($stmt = mysqli_prepare($conn, $sql)) {
        mysqli_stmt_bind_param($stmt, "iss", $points->data, "1", "1");

        mysqli_stmt_execute($stmt);

        mysqli_stmt_close($stmt);
    } else {
        //echo "no result from attempt to insert people into fpAction". "<br>";
        //echo $sql;
    }

}   
?>
我希望在接收程序中得到与发送程序中相同的Javascript数组。
谢谢

您是否在成功处理程序中尝试了
console.log(data)
?这将打印PHP脚本中的所有stdout,让您
echo
var\u dump
查看
$\u POST
数组中的内容。好的,首先,您的
success
函数在
$.ajax()中
call没有做任何事情来实际查看响应中返回的
数据。在AJAX术语中,任何未失败的HTTP请求(例如500错误)都是“成功的”。因此,它将触发成功函数。这并不意味着你的电话做了任何接近你想要的事情。这只是意味着电话没有爆炸。而且根本不看这个
数据
变量,你只是盲目地使用一个简单的JS警报来触发“成功”警报。所以“成功”只意味着联系有效。
actions[ 5] = new Array(    "Install Photovoltaic (Solar) Panels","6.33","1020","33121","0","25","149.8","0","0","0","1","1","Photovoltaic (solar) systems allow you to produce green electricity on your own rooftop.  Vendors often offer both purchase and lease options.   ","3","1.5","10","5.75","0");