0

我想做一个在线申请,它基本上是一个表格,在我决定进入下一步之前可能需要几天的时间才能填写。现在我的问题是,我如何才能知道用户已经完成了第一步,因此当他/她登录时,他/她将被带到第二步,如果没有,则进入第一步。

我正在考虑一个更类似于会话的功能。我可以用饼干吗?任何踢开始?

4

4 回答 4

2

基本上,你必须知道用户状态的两种方法是使用cookies,当然,或者数据库持久化。

由于您的用户必须登录才能继续,我建议第二个。也就是说,对于用户采取的表格的每一步,将该信息保存在您的数据库中。您可以保留用户已填写的所有信息,因此对于每次登录,您将知道要显示哪些字段(或哪个步骤)

这对 cookie 的好处是用户可以删除 cookie,因此您将丢失此信息。如果 cookie 过期,也会发生这种情况。

使用数据库持久性,您可以在您认为正确的任何时候维护此信息以等待用户完成表单。

希望能帮助到你,

于 2012-10-09T07:56:27.417 回答
2

取决于用户是否必须登录才能填写表格,如果用户必须使用用户名登录才能填写表格(类似于工作申请),那么您应该将用户的进度存储在表格中,以便他可以从哪里开始他已经离开了。

如果用户不需要登录,您可能希望设置没有过期时间的会话。但我不建议这样做,因为用户可以随时删除 cookie。

于 2012-10-09T07:57:00.193 回答
0

如果用户在您的网站上有一个帐户,您可以使用数据库中的列跟踪他们的表单进度,并检查他们返回时的位置。

如果他们没有您的帐户,我认为您最好的选择是设置一个 cookie 来告诉您的表单用户回来时执行的步骤。

这些只是我脑海中的想法,希望对您有所帮助!最好的祝福

于 2012-10-09T07:57:26.793 回答
0

把新的 sql 数据库表像,step-1 value-> done step-2 value-> notdone

当用户按下数据库表中的下一个按钮时填写此值


cookie 和 session 可能会被用户或更清洁的软件刷新,这就是您应该使用数据库表的原因

于 2012-10-09T07:58:27.103 回答