首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用PHP会话

使用PHP会话
EN

Stack Overflow用户
提问于 2010-10-29 15:08:11
回答 1查看 143关注 0票数 0

所以,我今天一直在用PHP进行会话,自从6个月前我开始使用PHP (看起来很可怕)以来,我一直在拖延是否应该使用会话,但我发现它非常简单。但是我使用time()作为会话id,我将解释为什么...

我在php.net网站上找到了一个关于会话引用的页面,其中一个代码示例使用它来管理会话:

代码语言:javascript
运行
复制
session_start();

if( !isset($_SESSION['last_access']) || (time() - $_SESSION['last_access']) > 60)
 $_SESSION['last_access'] = time();

但是,它很快就会过期。当然,我可以将60更改为一个非常高的数字,但这是针对一个客户平均花费3-4个小时将产品添加到购物车的网站,所以除非他们关闭页面,否则我不会有会话到期。

如何将相同的会话id传输到我们网站上的所有页面,而不考虑时间()。我真的不想用时间来管理会话id。

我在url中使用了常量SID,如下所示:

但是,按照<?php echo '<a href="theotherpage.php?sessid='.SID.'">go to another page</a>'; ?>网站的建议,使用常量不起作用。

有没有人可以帮我在整个站点上保持相同的会话id,而不管时间?

非常感谢您的帮助,谢谢!:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-29 15:13:56

我想你可能对会话有误解。假设启用了它们的cookie,您将永远不需要使用会话ID。会话ID本身存储在cookie中。如果您想让会话保持更长时间,只需使用ini_set('session.gc_maxlifetime',20);并将20更改为您希望它处于活动状态的分钟数。

请记住,您必须在每个文件的顶部使用start_session();,以确保特定文件使用会话。(这是一个很好的理由,在php文件的顶部有一个主要包含的配置文件,这样你就可以很容易地将它添加到1个文件中,它就会被添加到所有页面中)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4049712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档