点击一个按钮,我的php脚本会发出ajax POST,其中包含以下代码
<?php
$number = $_POST["id"];
$myarray[$number] = $_POST["marker"];
?>
两个POST条目为id
和marker
。我希望最终用户每次点击按钮都会构建一个名为$myarray
的越来越大的数组,因为$number
通常会发生变化。
相反,每次点击按钮都会破坏原始$myarray
并创建一个只有一个数据对的新$myarray
(新发送的$ number和$_POST["marker"]
)。
我如何对其进行编码,以便每次单击按钮都可以构建数组?
答案 0 :(得分:4)
HTTP是无状态协议,因此服务器无法在每次请求后了解$my_array
。 PHP只生成一些HTML,服务器提供生成的HTML。
不过,您可以在javascript中将信息存储在客户端。
至于你的评论问题: 不,它不会。解决方案实际上取决于您的用例,如果您需要可供以后使用的信息,则必须将其存储在数据库或文件中。如果仅用于当前浏览页面,请使用javascript将其存储在用户的浏览器中。将其存储为会话变量是另一种选择。
答案 1 :(得分:1)
您需要将其存储在会话中。 Documentation
基本上,
session_start();
$myarray = $_SESSION['myarray'];
//work with $myarray here
//store it back in the session
$_SESSION['myarray'] = $myarray;
答案 2 :(得分:0)
使用javascript点击数据。然后尝试在每次点击时传递整个队列