我可以使用AJAX通过JavaScript将数组传递给php文件吗?在我的应用程序代码中 JavaScript根据用户输入构建参数,然后对处理脚本进行AJAX调用。
例如,如果处理脚本url是process_this.php,那么从JavaScript调用将是process_this.php?handler=some_handler¶m1=p1¶m2=p2¶m3=p3
我可以这样做吗?:
process_this.php?handler=some_handler¶m1=[array]
感谢。
答案 0 :(得分:2)
使用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 print_r($_POST['params']); ?>
输出
数组([0] =&gt; param1 [1] =&gt; param2 [2] =&gt; param3)
答案 1 :(得分:0)
如何通过Post将JSON对象发送到PHP脚本? 看看这个PHP JSON Functions
答案 2 :(得分: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']));
答案 3 :(得分:0)
您可以将json对象发送到您的php,这就是标准方法