我有一个名为var abc=5
的变量,我想通过AJAX传递该变量,所以每次AJAX运行它时我想将该变量的值存储在PHP数组变量中。像这样:
$abc=$_request['abc'];
$xyz=array();
array_push($xyz,$abc);
当AJAX运行时,我希望输出如下:
$xyz[0]=1;
$xyz[1]=2;
.
.
.
.
$xyz[9]=10;
所以我可以在JPGraph中使用该数组吗?
答案 0 :(得分:0)
不要考虑传递javascript“变量”,而是考虑传递可以由Javascript解释并存储到客户端脚本关心使用的任何变量的模数据。
在客户端和服务器之间传递数据的一种简单而流行的方法是使用JSON。可以在PHP端创建JSON,然后将其发送到客户端以响应通过Ajax传递每个单独号码的请求。
将数字数据作为分隔值传递很容易,但是当您开始想要来回传递更复杂的数据结构时,JSON最有意义 - 它与Javascript的基本数据结构以及大多数现代语言密切相关:键/值对,数组(数据列表),true,false,null,模数字符串和数字。
您的JSON响应有效负载可能如下所示:
"[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]"
您可以在Javascript中轻松解析它:
var data = JSON.parse( ajax_response )
请参阅Fiddle了解模型
答案 1 :(得分:0)
不要使用多个AJAX请求。完成后只需使用1。在JSON format
中构建要在PHP中使用的数组。
var string_to_send_with_ajax = JSON.stringify(['1','4','8']);
在php中,您可以在PHP中使用它:
$array = JSON_decode($_POST['string_to_send_with_ajax']);
如果你是肯定的,你想用PHP保存服务器上的变量,你第一次定义一个数组。设为session variable
,只要浏览器未被用户关闭,它就会出现在服务器上。
$_SESSION['plotArray'] = array();
使用array_push
向数组添加值:
array_push( $_SESSION['plotArray'],$_POST['string_to_send_with_ajax']);