Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用AJAX请求获取数组并将其传递到php数组中_Javascript_Php_Jquery_Ajax_Arrays - Fatal编程技术网

Javascript 使用AJAX请求获取数组并将其传递到php数组中

Javascript 使用AJAX请求获取数组并将其传递到php数组中,javascript,php,jquery,ajax,arrays,Javascript,Php,Jquery,Ajax,Arrays,我正在努力解决下一个问题:我有一个将变量传递到PHP文件的ajax请求。PHP处理变量并返回一个数组。我需要返回数组,所以我使用了AJAX成功回调函数,但我只能打印出数组,仅此而已。我想用那个数组 $.ajax({ method: 'POST', url: "process.php", data: { data: data}, success: function(array) { <?php echo $GLOBALS['glob

我正在努力解决下一个问题:我有一个将变量传递到PHP文件的ajax请求。PHP处理变量并返回一个数组。我需要返回数组,所以我使用了AJAX成功回调函数,但我只能打印出数组,仅此而已。我想用那个数组

$.ajax({
    method:  'POST',
    url:  "process.php",
    data: { data: data},
    success: function(array)
    {
        <?php echo $GLOBALS['glob']; ?> = data;
    }
});
$.ajax({
方法:“POST”,
url:“process.php”,
数据:{data:data},
成功:函数(数组)
{
=数据;
}
});

即使我稍后引用$GLOBALS['glob'],它也表示这是一个未定义的变量请帮帮我

尝试从您的业务逻辑发送json数组。

在php文件中,您需要返回json字符串,在成功回调函数中,您可以获得要通过服务器端传递的对象

就像在php文件中一样,在结束所有处理之后,将数组转换为json字符串

json_encode($array);

在success callback函数中,尝试调试console.log(array)

成功后,将变量指定为“array”,当您尝试将其放入php数组中时,表示变量名为“data”。 这是你的第一个问题

$.ajax({
    method:  'POST',
    url:  "process.php",
    data: { data: data},
    success: function(**array**)
    {
        <?php echo $GLOBALS['glob']; ?> = **data**;
    }
});
$.ajax({
方法:“POST”,
url:“process.php”,
数据:{data:data},
成功:函数(**数组**)
{
=**数据**;
}
});
您还尝试在客户端使用php。。 普通javascript在页面加载且变量在页面加载时已填充完毕后激发。在这种情况下,您不能再使用该变量

我注意到了这一点

$.ajax({
    method:  'POST',
    url:  "process.php",
    data: { data: data},
    success: function(**array**)
    {
    <?PHP echo $GLOBALS['glob']; ?> = data 
}
});
$.ajax({
方法:“POST”,
url:“process.php”,
数据:{data:data},
成功:函数(**数组**)
{
=数据
}
});
您可以结束变量而不指定它 应该是

<?PHP echo $GLOBALS['glob'] = ?> data  <?PHP ; ?>
数据
但正如我所说,php脚本是在javascript之前执行的,所以当服务器读取文件时,它只会说


echo$GLOBALS['glob']=

什么是glob变量?这应该是我稍后要使用的全局变量。
PHP
=服务器端<代码>Javascript(jQuery)=客户端。除非在客户端代码处理之前使用AJAX,否则无法通过javascript将任何内容传递给PHP。我确实获得了数组的精确副本,或者数组内容(如果需要),但我仍然希望将数组复制到PHP数组或其他内容中,因此,我将能够使用这个数组,而不仅仅是在process.php和callbackSo中写入。为什么不将这个数组分配给php文件本身中的全局变量,而不是作为数组返回process.php文件是另一个文件,我需要AJAX请求所在的另一个php文件中的数组。是的,我发现了同样的情况。但是我能用这个做什么呢?你可以把它放在一个javascript数组中,然后发送到一个ajax处理文件中。。我不知道你想用它做什么