2011-08-10 91 views
-1

可能重复:
Passing JavaScript Array To PHP Through JQuery $.ajax通过AJAX将JavaScript数组传递给PHP类?

我能通过使用JavaScript AJAX数组到PHP文件?在我的应用程序代码 中,JavaScript根据用户输入构建参数,然后对处理脚本进行AJAX调用。

例如,如果处理脚本网址是process_this.php从JavaScript发出的呼吁是process_this.php?handler=some_handler&param1=p1&param2=p2&param3=p3

我可以做这样的事情?:

process_this.php?handler=some_handler&param1=[array] 

感谢。

回答

0

通过邮件发送一个JSON对象到你的PHP脚本怎么样? 有使用jQuery你可以做这样的事情

<script language="javascript" type="text/javascript"> 
$(document).ready(function() { 

    var jsarr = new Array('param1', 'param2', 'param3'); 

    $.post("process_this.php", { params: jsarr}, function(data) { 
     alert(data); 
    }); 

}); 
</script> 

php脚本来看看这款PHP JSON Functions

2

<?php print_r($_POST['params']); ?> 

输出将

阵列([0] = > param1 [1] => param2 [2] => param3)

0

您可以使用JSON将数组编码为字符串,通过HTTP请求将字符串发送给PHP,并在那里对其进行解码。你也可以用对象来做到这一点。

在Javascript中你这样做:

var my_array = [p1, p2, p3]; 
var my_object = {"param1": p1, "param2": p2, "param3": p3}; 
var json_array = JSON.stringify(my_array);  
var json_object = JSON.stringify(my_object);  
var URL = "process_this.php?handler=some_handler" + 
      "&my_array=" + json_array + "&my_object=" + json_object; 

在PHP你这样做:

$my_array = json_decode($_POST['my_array'])); 
$my_object = json_decode($_POST['my_object'])); 
0

您可以发送JSON对象到PHP,这就是标准的方法