Javascript PHP+;JS应用程序结构
我想知道如何管理应用程序中的数据 现在是这样, javascript脚本触发post查询,该查询在页面加载后传递Javascript PHP+;JS应用程序结构,javascript,php,web,Javascript,Php,Web,我想知道如何管理应用程序中的数据 现在是这样, javascript脚本触发post查询,该查询在页面加载后传递{“init”:1},然后每隔N秒向同一文件触发一次{“update”:1},并将返回值打印到页面 我目前拥有的(代码是近似值,只是为了明确起见): if(isset($\u POST[“init”])){ $a=新的a(); $a->set(5); }elseif(isset($\u POST[“更新”])){ $a->update(); 返回$a->get(); } 但是这不起
{“init”:1}
,然后每隔N秒向同一文件触发一次{“update”:1}
,并将返回值打印到页面
我目前拥有的(代码是近似值,只是为了明确起见):
if(isset($\u POST[“init”])){
$a=新的a();
$a->set(5);
}elseif(isset($\u POST[“更新”])){
$a->update();
返回$a->get();
}
但是这不起作用,因为它说当我尝试更新时没有$a
。我尝试过使它成为全局的
和静态的
,但都没有效果
我该怎么办?我该如何处理这个问题 在更新之前,您需要按$id查找$a,例如:
if(isset($_POST["init"])) {
$a = new A();
$a->set(5);
} elseif (isset($_POST["update"])) {
$a = A->findById($_POST["id"]);
$a->update();
return $a->get();
}
还请注意,从用户处获取数据而不进行筛选是一种不好的做法。在代码中,您无权访问$a。如果设置了更新,您还应该发送$a数据,以便它能够工作
您还可以使用$\u会话变量跨这些页面获取$a,并且它将仅在服务器端进行管理
session_start();
if(isset($_POST["init"])) {
$a = new A();
$a->set(5);
$_SESSION['a'] = $a
} elseif (isset($_POST["update"])) {
$a = $_SESSION['a'];
$a->update();
$_SESSION['a'] = $a;
}
我写的行比需要的多,所以你能很好地理解我在做什么。不,不,我想把它都放在服务器端。可能吗?在我的例子中,我收到的唯一用户信息是post查询。我的意思是我写了更多需要的行,你可以:$\u SESSION['a']->update();例如,你应该明确说明。我的解释不好,因为这不是我的母语,仅此而已:)现在这样更好了。我只会将变量名放在反勾号之间。另外,
会话
应该是$\u会话
。别忘了提及浏览器需要支持cookies,仅此而已!