如何使用AJAX将Javascript数组传递到PHP文件?
在调用AJAX时,我必须将Javascript数组传递给PHP文件 下面是我的js数组:如何使用AJAX将Javascript数组传递到PHP文件?,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,在调用AJAX时,我必须将Javascript数组传递给PHP文件 下面是我的js数组: var myArray = new Array("Saab","Volvo","BMW"); 此JS代码必须使用AJAX请求将JS数组传递给PHP文件,并将显示数组的计数 function ProcessAJAXRequest() { $.ajax ({ type: "POST", url: "myphpfile.php", data: {"
var myArray = new Array("Saab","Volvo","BMW");
此JS代码必须使用AJAX请求将JS数组传递给PHP文件,并将显示数组的计数
function ProcessAJAXRequest()
{
$.ajax
({
type: "POST",
url: "myphpfile.php",
data: {"id" : 1, "myJSArray" : myArray},
success: function (data)
{
alert(data);
}
});
}
此myphpfile.php文件必须返回数组的计数
<?php
$myPHPArray = $_POST["myJSArray"];
echo count($myPHPArray);
?>
PHP文件中有错误。我得到了未定义的索引:myPHPArray。如何实现所需功能?用于将值转换为JSON并发送到服务器
data: JSON.stringify({"id" : 1, "myJSArray" : myArray})
用于将值转换为JSON并发送到服务器
data: JSON.stringify({"id" : 1, "myJSArray" : myArray})
通过
json.stringify将js数组转换为json格式
function ProcessAJAXRequest()
{
$.ajax
({
type: "POST",
url: "myphpfile.php",
data: {"id" : 1, "myJSArray" : JSON.stringify(myArray)},
success: function (data)
{
alert(data);
}
});
}
在PHP
中,使用json\u decode
函数获取数组中的值
json_decode($_POST["myJSArray"]);
通过json.stringify将js数组转换为json格式
function ProcessAJAXRequest()
{
$.ajax
({
type: "POST",
url: "myphpfile.php",
data: {"id" : 1, "myJSArray" : JSON.stringify(myArray)},
success: function (data)
{
alert(data);
}
});
}
在PHP
中,使用json\u decode
函数获取数组中的值
json_decode($_POST["myJSArray"]);
您可以使用JSON.stringify(array)
在JavaScript中对数组进行编码,然后使用
$array=json_decode($_POST['jsondata'])代码>
在PHP脚本中检索它。请检查此链接
您可以使用JSON.stringify(array)
用JavaScript对数组进行编码,然后使用
$array=json_decode($_POST['jsondata'])代码>
在PHP脚本中检索它。请检查此链接
在我看来,您的阵列在功能范围内不可用:
function ProcessAJAXRequest(){
var myArray = new Array("Saab","Volvo","BMW"); // this has to be in fn scope
$.ajax({
type: "POST",
url: "myphpfile.php",
data: {"id" : 1, "myJSArray" : JSON.stringify(myArray)}, // do the stringify before posting
success: function (data){
alert(data);
}
});
}
在我看来,您的阵列在功能范围内不可用:
function ProcessAJAXRequest(){
var myArray = new Array("Saab","Volvo","BMW"); // this has to be in fn scope
$.ajax({
type: "POST",
url: "myphpfile.php",
data: {"id" : 1, "myJSArray" : JSON.stringify(myArray)}, // do the stringify before posting
success: function (data){
alert(data);
}
});
}
为什么不计算客户端的计数呢?我看不到您的函数范围中有var。您的代码非常好。我得到了第三个数字,没有任何变化。我没有得到任何错误。使用PHP5.3为什么不计算客户端的计数?我看不到您的函数范围中有var。您的代码非常好。我得到了第三个数字,没有任何变化。我没有得到任何错误。使用PHP5.3