自动保存PHP表单

时间:2012-12-17 13:18:34

标签: php mysql

我有一个包含多个标签的表单。每个选项卡都有各种项目(文本框,单选按钮,下拉框)。我需要在闲置15秒后或用户点击其他标签/项目时保存内容。

目前,当用户点击按钮时,我正在保存。这就产生了一个问题,即如果用户在选项卡x上并单击该按钮,则表单将被恢复到第一个选项卡。

我希望在最后一个标签上有保存按钮。当用户填写不同选项卡中的数据时,会自动保存该数据。当用户单击最后一个选项卡时,将显示命令按钮,然后在单击时执行另一个保存,并将用户带到所有记录的主屏幕。

请您的建议和指导:)

此致

巴布

3 个答案:

答案 0 :(得分:1)

我想说当你选择另一个标签时,你想在后台使用ajax调用提交每个标签内容(表单值)。这样,您可以让用户在选项卡之间导航,而无需重新加载整个表单。并且值将被移交给服务器上的某个ajax端点,以便存储它们。

您可以对自动保存功能执行相同操作:设置计时器,当触发您使用ajax调用在后台发布表单值时。

为了让你的生活轻松使用jquery为ajax调用和jquery-ui为标签。

答案 1 :(得分:0)

在最后一个选项卡中保存数据之前,您不保存以前的选项卡数据..因为如果用户不愿意在移动到最后一个选项卡后保存数据,则意味着保存以前的数据并将其删除是浪费。

所以你可以在SESSION中做到这一点......(即)你将每个标签的数据存储在一个会话ID的会话中

$session[ID][fieldName1]
$session[ID][fieldName2]
$session[ID][fieldName3]

最后,如果用户单击最后一个按钮选项卡..您从会话中获取数据并保存在数据库 USING AJAX 中并取消设置会话变量....如果他单击取消也取消设置.....

答案 2 :(得分:0)

您还可以使用Jquery选项卡,以便整个表单位于一个页面上,表单可以保存在最后一个选项卡上(使用您的按钮)。

这样您就不必担心在最后一个标签页之前保存您的数据。