小编典典

使用Ajax将数组发送到PHP脚本

javascript

我有由函数 .push 制成的数组。数组中的数据非常大。如何将此最佳方式发送到PHP脚本?

   dataString = ??? ; // array?
   $.ajax({
        type: "POST",
        url: "script.php",
        data: dataString, 
        cache: false,

        success: function(){
            alert("OK");
        }
    });

script.php:

  $data = $_POST['data'];

  // here i would like use foreach:

  foreach($data as $d){
     echo $d;
  }

最好的方法是什么?


阅读 336

收藏
2020-05-01

共1个答案

小编典典

将您的数据字符串编码为JSON。

dataString = ??? ; // array?
var jsonString = JSON.stringify(dataString);
   $.ajax({
        type: "POST",
        url: "script.php",
        data: {data : jsonString}, 
        cache: false,

        success: function(){
            alert("OK");
        }
    });

在你的PHP中

$data = json_decode(stripslashes($_POST['data']));

  // here i would like use foreach:

  foreach($data as $d){
     echo $d;
  }

注意

通过POST发送数据时,它必须作为键值对。

从而

data: dataString

是错的。而是:

data: {data:dataString}

2020-05-01