我认为这可能是this question的重复,但我真的不明白答案
我想在脚本/页面的开头创建一个新对象。该页面有多个步骤,我想在每个步骤中使用Ajax和单独的PHP文件。但是,其中一些步骤需要修改对象。
这样做的正确方法是什么。我正在使用JQuery Ajax。
它基本上是一个结帐页面,但后面的阶段是根据所选的选项生成的。
答案 0 :(得分:1)
如果您需要跨多个请求保留数据,则应使用会话或Cookie。
答案 1 :(得分:1)
您可以让对象代表数据库表。如果它是User对象,则创建用户表,并通过JSON请求通过加载ID来修改对象。基本上,每当你发出一个AJAX请求时,取消冻结它,然后修改它,并将它粘贴回数据库。
或者,您可以将其粘贴到$_SESSION
中,但请记住,您的对象必须能够完全序列化。
答案 2 :(得分:1)
您要做的是保持数据可通过多个连接访问 - 保留数据。它在PHP中非常简单,只需使用会话。
首先,如果要访问持久数据(或存储任何数据),则需要启动会话。这样做:
session_start();
从那时起,您添加的任何内容都将被存储(除了一些例外 - 例如,存储MySQL连接可能不会很好)。不过不用担心 - 数据仅对用户持续存在。例如,其他人将无法访问其他人的购物车或表格中的进展。
以下是针对会话存储数据的方法:
$obj = new MrClass();
$_SESSION['form_object'] = $obj;
稍后,只需像往常一样访问它:
$_SESSION['form_object']->someMethod();
记住:每个AJAX请求必须以session_start()
开头。