php请求/发布/获取/会话到期

时间:2010-10-04 14:28:14

标签: php session post get request

我知道SESSION可以过期,但是$ _REQUEST / $ _ POST / $ _ GET变量怎么样?

我的问题是,我有用户提交信息,我需要在将信息插入数据库之前为该信息设置ID。现在我考虑使用SESSION,但问题是如果会话在用户将信息提交到数据库之前到期,则会丢失我需要的ID。将$ _REQUEST / $ _ POST / $ _ GET变量传递给它是一个更好的解决方案,还是应该使用变量并重新调整脚本?

我也在使用SESSION,因为很容易从函数内部调用而不传入它。

function setInfo() {
   // no need to pass I can call from within
   $Id = $_SESSION['Id'];
}

这是好习惯吗?

编辑: 作为一个cookie会更好吗?

2 个答案:

答案 0 :(得分:1)

我的第一个问题是,您是否无法插入行并使用@@ IDENTITY检索自动递增ID?你不能真正“存储”$ _REQUEST,$ _POST或$ _GET中的数据,这些数据只是从客户端提交页面,表单,链接请求到服务器到完成并发送到输出结果页面时的数据。无论哪种方式,您很可能会使用$ _SESSION空间来存储需要携带到其他页面的信息。

答案 1 :(得分:0)

您可以在表单中使用隐藏字段,并将隐藏字段的存储在数据库中(“可能或非常可能”,您将需要一个单独的表格)。当用户提交表单时,您检查数据库中是否存在隐藏var的已提交

处理来自特定的请求时,请将其从数据库中删除。