2011-12-16 49 views
0

我一直认为我是最不幸的人,因为我必须维护其他人编写的非常可怕的代码。但经过一些论坛后,我意识到我并不孤单。session_start()在PHP 4中

这段代码是在我开始在这里工作之前编写的,现在我正在维护它。我总是不停地问,我们应该分配时间来重写代码,但没有人关心。

我将要问的问题,你可以评论它是绝对可怕的,但重写整个代码不是一个选项。

这是场景。整个网站是用PHP 4编写的(网站的60%是在index.php中,不知道为什么),所以现在每隔一段时间就有session_start()。由于这个原因,会话被非常频繁地重置,并且用于注销用户。我继续并注释掉session_start()。当他在网站上时,它停止注销用户。现在有一些新问题。

我通过评论session_start()做错了吗?

编辑: 我看到关于session_start的文档,可能是我没有添加一些有问题的附加信息。我没有谷歌搜索“会话大小限制PHP”以下是链接。 stackoverflow.com/questions/217420/ideal-php-session-size。那么如果会话中的数据太多会发生什么? - user110093

+0

看来是的,你确实做错了什么。我们不知道什么没有看到一些代码,但... – 2011-12-16 14:40:06

+0

对不起,但我不认为这是正确的地方要求。我想答案是,只要我们在源文件中输入单个字符,它就会短暂中断。我认为这个错误会在没有彻底测试的情况下发布代码。是否有更好的方法来实现你想要达到的目标将取决于代码。 – sje397 2011-12-16 14:40:13

回答

4

从PHP文档

在session_start()创建一个会话或恢复基于经由GET或POST请求,通过或通过cookie传递会话标识符的当前一个。

所以你在下面的描述不应该发生:

所以每一个现在,再有就是在session_start()。由于该会话非常频繁地被重置并且它用于注销用户。

如果我是你,我会深入研究并找出会话重置的原因。 session_start()不应该是这个问题的根源。