gpt4 book ai didi

javascript - 使用 Ajax 将数组传递给 PHP 脚本会导致空帖子

转载 作者:行者123 更新时间:2023-11-28 19:41:36 25 4
gpt4 key购买 nike

我想使用 AJAX 将数组从 HTML 站点传递到 PHP 脚本

JS

function selectPictures() {
//selected Pictures is my JS array
var jsonArray = JSON.stringify(selectedPictures);

var request;
request = $.ajax({
url: "selectedPictures.php",
type: "POST",
data: {
data: jsonArray
},
cache: false
success: function () {
alert('OK');
}
});
}

HTML

href="selectedPictures.php" onclick="selectPictures();"

PHP

if (isset($_POST['data'])) {
$data = json_decode(stripslashes($_POST['data']));
foreach($data as $d) {
echo $d;
}
}

实际上我想将数据发送到另一个 HTML 页面,然后包含 PHP 脚本,但我不明白为什么这个例子不起作用。 $_POST['data'] 未设置。

更新好的,Ajax 帖子实际上正在工作,因为我看到 HTTP 请求成功但是:我无法立即访问该变量。我需要立即访问传递的数组的值以执行另一个 PHP 脚本。当我想这样做时,我收到未定义索引错误。同样,在执行 isset 函数时,它返回 false(尽管 HTTP 请求成功)。

最佳答案

HTML

<a href="#" id="selectPictures">click</a>

JS

$(function(){
$('#selectPictures').click(function(){
var jsonArray = JSON.stringify(selectedPictures);
var request = $.ajax({
url: "selectedPictures.php",
type: "POST",
data: {data: jsonArray},
cache: false,
success: function(data){alert(data);}
});
});
});

在chrome中使用f12查看错误,你忘了在“cache: false”后面添加逗号

关于javascript - 使用 Ajax 将数组传递给 PHP 脚本会导致空帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24914084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com