多个会话或一个会话


Multiple sessions or one?

我正在为表单使用安全令牌,表单是根据通过jquery的选择动态构建的。因此,这种形式被称为很多,并且每次都会创建不同的令牌。

那么.. 如果同一个用户调用表单 3 次,会话将被重写?检查令牌是否存在并且除非为空而不创建一个令牌是否有帮助?或者也许有人知道使用表单令牌的好方法?

如果 3 个

用户在,那么令牌会使用不同的值创建 3 次,对吧?如果我检查令牌并且 3 个用户处于打开状态,那么会话将使用相同的值创建 3 次?

每次加载页面时生成一个新令牌。不要检查令牌是否已存在,只需每次生成一个新令牌即可。这不会复制令牌;每个用户始终有一个,但每次加载页面时都是唯一的。

以上将减少用户拥有相同令牌的机会,尽管如果您通过md5(uniqid(rand(), TRUE));生成唯一字符串,那么您不必担心重复的令牌 ID(这是可能的,但实际上您有更好的机会成为整个地球人口中挑选出来的一个人)