请教一个 WEB 系统表单填写时间过长,提交后表单数据丢失的问题

2019-05-14 17:30:52 +08:00
 MrMike

WEB 系统是用 Symfony3 开发的,最近遇到问题:

用户登录系统后,浏览器长时间不使用,点击系统链接时,会被跳转到登录页面,经查询,在用户被跳转到登录页面时,是可以获取到当前用户的信息的。

后来就在登录 Action 里,设置了如果能获取到当前用户的数据,就跳转到来源页。

这样处理后,当当前页面是表单页面,需要填写大量的数据时,在填写完表单数据后,提交,页面被刷新了,表单的数据也丢失了。。

在 security.yml 文件中: remember_me: secret: '%kernel.secret%' lifetime: 1296000 # 15 days path: / always_remember_me: true

请问有朋友遇到过这样的问题,是什么地方出了问题呢?谢谢

2732 次点击
所在节点    PHP
3 条回复
yoshiyuki
2019-05-14 17:39:02 +08:00
正常页面跳转后,表单必然是丢失的,你说的可能是框架提供的表单自动重新填写的功能失效了,这个功能具体每个框架实现不一样
banricho
2019-05-14 17:40:56 +08:00
这种事情在前端处理会更好一些。

首先体验上需要改,根本上避免大量数据的表单出现。
如果需要有很多数据,分类分页分步骤,总之不要一次写太多,对用户也友好。
前端这边对于表单也可以在提交之前保存到 localStorage,甚至可以定时存储一次。
whypool
2019-05-14 17:42:03 +08:00
前端存个缓存就行
没提交的数据刷新读取缓存
提交成功清理缓存

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/564087

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX