2011-12-16 41 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()不應該是這個問題的根源。