【发布时间】:2014-12-09 16:35:58
【问题描述】:
我有一个相当长的 html / php 表单,我让用户填写,如果它花费的时间比我的服务器允许的最大连接时间长,那么它会超时并且当表单没有正确提交时他们会丢失他们填写的内容.用户通过登录并为与 mysql INSERT 语句一起使用的凭据创建会话 cookie。
我的问题是,如果它每半小时左右通过自动保存与数据库进行通信,是否会设置自动保存以保持该连接处于活动状态?还是有更好的方法来做到这一点?请注意,不是保存时间过长和超时,而是数据库不活动导致连接断开。
感谢大家的帮助!
【问题讨论】:
-
如果您不上传某些文件,则帖子不需要最长执行时间(通常接近 60 秒)。如果您的系统需要更多时间,它可能取决于很多事情。最好检查一下你的系统。
-
处理提交表单时,会创建新的数据库连接,因此可能不是数据库。检查 cookie 过期时间和会话超时值。
-
保存正在处理的表单并不是一个坏主意,尤其是在需要一些时间才能完成的情况下。只要确保用户可以重新加载页面并从他们离开的地方继续。为此,您需要在 URL 中包含某种唯一令牌以获取部分完成的表单。无论如何,最大连接时间不应该是这里的一个因素。该请求应该已生成表单并完成,然后稍后的后续请求将保存它。
标签: php html mysql timeout session-timeout