Javascript 通过Ajax将JS数组传递给PHP

Javascript 通过Ajax将JS数组传递给PHP,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一个javascript数组,需要将其转换为PHP数组。所以我有这个代码,我也尝试过其他代码,但没有人工作过。 代码如下: var数组=新数组(); $('#img')。更改(函数(){ var img=$('\'img').val().split('\\').pop(); 阵列推送(img); document.getElementById('res').innerHTML=array; }); $(“#提交”)。单击(函数(){ var send_data=JSON.stringi

我有一个javascript数组,需要将其转换为PHP数组。所以我有这个代码,我也尝试过其他代码,但没有人工作过。 代码如下:



var数组=新数组(); $('#img')。更改(函数(){ var img=$('\'img').val().split('\\').pop(); 阵列推送(img); document.getElementById('res').innerHTML=array; }); $(“#提交”)。单击(函数(){ var send_data=JSON.stringify(数组); $.ajax({ 类型:“POST”, enctype:“多部分/表单数据”, url:“test.php”, 数据:{send_data:send_data}, 数据类型:“JSON”, 成功:功能(数据){ } }); });
HTML和Javascript示例代码:

函数validateForm(){
设formData={
'name':$('input[name=name]')。val(),
'email':$('input[name=email]')。val(),
'message':$('textarea[name=message]')。val()
};
//防止发送消息后刷新页面(ajax)
$.ajax({
url:“./assets/php/contact_me.php”,
类型:“POST”,
数据:formData,
成功:函数(数据、文本状态、jqXHR){
if(数据代码)
$('#status').text(data.message);
},
错误:函数(jqXHR、textStatus、errorshown){
$('#status')。文本(“错误”);
}
});
}
发送消息
我有一个javascript数组,需要将其转换为PHP数组

您可以在
POST
-ing之前将javascript数组(称为
myDataAsJSArray
)转换为JSON字符串:

let myDataAsJSON = JSON.stringify('myDataAsJSArray');
POST
-ing之后,您可以将JSON字符串转换为PHP数组

$My_Data_As_PHP_Array = json_decode($_POST['myDataAsJSON'], TRUE);
请注意,如果省略上面的可选
TRUE
参数,PHP将把JSON转换为PHP对象,而不是PHP数组


进一步阅读:


发生了什么错误?..@Albertosinaglia代码没有从PHP代码返回数组尝试在请求之前登录浏览器控制台数组中的内容这不是我真正需要的。我可以传递变量,但我需要传递数组。在上面的示例中,“formData”是一个数组,我们正在发送它。@Matarata
formData
是一个对象而不是数组。@JuniusL。对一切都是一个对象,但更具体地说,它是数组类型的对象。对吗?请看这和我做的是一样的。但这不管用!对不起,也许我误解了您的问题-您是否停留在客户端和服务器之间的实际数据传输上,而不是在两种语言之间传递数据?是的。你告诉我的方式是曾经最受欢迎的方式之一。我试过了,但没有结果。好的,看。我想建立一个管理面板。为此,我需要输入多个图像文件,然后写一些内容,然后添加一些图像,等等。在这之后,我想把所有的名字附加到一个数组中,然后把这个数组传递到PHP文档中,然后把所有这些图片上传到一个文件夹中。现在我只需要将js数组传递到phpye中,我的意思就是这样。我想在客户端和服务器之间传输数据