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

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

我有函数.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;
  }

这是怎么回事?


DIEA
浏览 677回答 3
3回答

慕妹3146593

将数据字符串编码为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}

holdtom

jQuery ajax()函数中的数据接受匿名对象作为其输入,请参阅文档。所以你要找的是:dataString = {key: 'val', key2: 'val2'};$.ajax({         type: "POST",         url: "script.php",         data: dataString,          cache: false,         success: function(){             alert("OK");         }     });您也可以自己编写POST / GET查询key=val&key2=val2,但是您必须处理自己的问题,这是不切实际的。
打开App,查看更多内容
随时随地看视频慕课网APP