asp取消按钮清除会话变量

时间:2013-07-02 19:29:26

标签: asp-classic

我发现了这个: “我创建了一个带有session.abandon的页面,并让提交按钮调用它并重定向回当前页面。工作。” 在此网址上: Session clear and page refresh

使用经典ASP我有一个.asp页面/表单用于使用电子邮件地址进行备用登录并回答'秘密问题'。如果有人输入电子邮件地址并单击“提交”,我将从数据库中检索“秘密问题”。我在会话变量中存储了地址和问题。

在第2步中,提示此人输入问题的“答案”并再次提交。所有这一切都很好。登录成就......生活很美好!

如果出于某种原因,该人决定在没有输入答案的情况下停止(实际上放弃登录),会话变量仍然存在。

我一直在努力寻找一种方法(在我有限的编码能力范围内)来清除这些特定的会话变量。我知道清除单个(或所有)会话变量的语法。我只是无法弄清楚如何'触发'(即'执行')Session.RemoveAll。顶部的引用和URL表示有人知道如何执行此操作...但他没有说他是如何做到的,以便我可以复制该过程。

任何人都可以牵着我这一手吗?感谢。

1 个答案:

答案 0 :(得分:0)

会话变量将在服务器设置的任何时间自行清除,以考虑放弃会话(通常为10 - 20分钟)。你有两个选择:

  • 您可以缩短服务器上的会话超时,但如果您的网站具有长时间不活动的自然位置,则会导致问题。
  • 您可以使用Session.Timeout来调整该页面的超时时间。

如果他们真的放弃了会话 - 他们没有执行任何操作 - 那么没有什么可以附加触发器。问题顶部的位在提交时运行Session.Abandon - 与您描述的情景不同。