2012-06-19 158 views
0

我想使用PHP會話來存儲一個狀態,通過查詢字符串從一個引用網站傳遞1次。麻煩是本地我可以在會話範圍內維護這個狀態,但它在生產服務器上的工作方式不同。PHP會話不會持續

我試着在文件的腳做這在WordPress的WP-config.php文件:

session_set_cookie_params(0); 
session_start(); 

開始,隨着瀏覽器過期的會話。 然後檢查查詢字符串PARAM &設置:

if (!isset($_SESSION['isEUStore']) && isset($_GET['store']) && strtolower($_GET['store'])=='eu') $_SESSION['isEUStore']=true; 
elseif (!isset($_SESSION['isUSStore']) && isset($_GET['store']) && strtolower($_GET['store'])=='us') $_SESSION['isUSStore']=true; 

然而,$ _SESSION [ 'isEUStore']或$ _SESSION [ 'isUSStore']站點中的任何其他的WordPress頁面上返回NULL。

有什麼建議嗎?一些配置設置可能不同?

感謝,

回答

0

我沒有與會議解決這一問題被遺忘,但我發現用餅乾代替工作。如:

if (!empty($_GET['store']) && strtolower($_GET['store'])=='eu') { 
    setcookie('isEUStore', true, 0, '/', $faco_domain); 
    setcookie('isUSStore', true, time()-3600, '/', $faco_domain); 
} elseif (!empty($_GET['store']) && strtolower($_GET['store'])=='us') { 
    setcookie('isUSStore', true, 0, '/', $faco_domain); 
    setcookie('isEUStore', true, time()-3600, '/', $faco_domain); 
} 

Cookie不會在Wordpress頁面之間被遺忘,而會在瀏覽會話結束時過期。