我是一个我正在开发的web应用程序(用PHP开发),当用户发布任何服务请求时,用户必须填写一个非常长的表单。
一旦用户填写表单并提交它,将加载另一个页面(确认页),其中显示由用户填写的所有值。我必须指出,在这个阶段,数据还没有保存到MySQL。现在,在这个页面上,用户可以保存服务请求或者返回。
我的问题从这里开始。当用户返回时。所有填写的数据都是lost。顺便说一句,用户倾向于使用浏览器后退按钮,而不是在确认页面上提供的后退按钮。
如何持久化由用户填写的数据,以便用户可以编辑/更改数据,并再次提交更改的数据。
发布于 2009-06-24 06:04:39
你可以使用代码:
`session_cache_limiter('must-revalidate');`
这对我很管用。请记住,这一行必须放在session_start()之前。无论如何,这对我很有用,因为我不需要处理会话附带的所有会话变量。
或者将表单数据放入如下所示的会话: Code:
$_SESSION['myFormData'] = $_POST;
发布于 2009-06-24 06:04:51
如果您还没有将其持久化到DB,那么您可以做的一件事是将值存储在用户会话中。因此,当用户前进时,将信息保存到会话中,然后当他们回击时,从会话加载信息。然后,当他们最终确定使用dat时,您可以将其发送到DB。
发布于 2009-06-24 06:05:33
可能最简单的方法是将数据存储在会话中。让您的数据输入表单检查会话,查看数据是否在那里,如果存在,则使用该数据预填充表单。
一旦它们完成了进程,并且数据存储在DB中,就从会话中清除这些值。
https://stackoverflow.com/questions/1038572
复制相似问题