我试图将两个js数组传递给jquery ajax到php后端。
但是,在网络选项卡的开发工具中,我收到>无法加载响应数据。任何建议TY
var arr1 = [];
var arr2 = [];
var id = 2432;
$.ajax({
type: "POST",
url: '/api/put/update_dealer_manufacturer.php',
async: true,
data: {arr1, arr2, id},
dataType: 'json',
success: function(data) {
let output = data;
},
error: function(data) {
console.log("error");
console.log(data);
}
});
在后端,我正在做:
$output = array(
"success" => false,
"msg" => ''
);
$arr1 = $_REQUEST['arr1'];
$arr2 = $_REQUEST['arr2'];
$id = $_REQUEST['id'];
在后端我有
<?php
if(empty($_REQUEST['id'])){
$output['msg'] = "Authentication error";
echo json_encode($output);
die();
}
$new_manufacture = $_REQUEST['arr1'];
$delete = $_REQUEST['arr2'];
$id = addslashes($_REQUEST['id']);
然后,在每个arr上循环一个
foreach
。我在后端文件的末尾做了,但是由于某种原因我
没有得到任何结果来判断我是否到达了后端文件。
$output['success'] = true;
echo json_encode($output);
最佳答案
我无法发表评论(由于代表不允许这样做)。尝试更改为以下内容,看看是否允许您继续进行。
data: {"arr1":arr1, "arr2":arr2, "id":id},
dataType: 'html',
我通过做console.log来测试成功和失败.....这就是我得到的...
Array
(
[0] => 123
[1] => 234
)
Array
(
[0] => 345
[1] => 456
)
2432
完整代码:
<script type="text/javascript" src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script type="text/javascript">
var arr1 = ['123','234'];
var arr2 = ['345','456'];
var id = 2432;
$.ajax({
type: "POST",
url: 'code2.php',
async: true,
data: {"arr1":arr1, "arr2":arr2, "id":id},
dataType: 'html',
success: function(data) {
console.log(data);
},
error: function(data) {
console.log("error");
console.log(data);
}
});
</script>
关于javascript - 如何通过jQuery将两个js数组传递给PHP,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57980263/