問題:使用session_()函數返回的值為"",搞不明白什麼原因,在同一服務下的兩個網站(同一網站不同子域名),一個好用一個不好用。
解決辦法:
// session id 問題 $sid = session_id(); if(empty($sid)){ $sid = md5(uniqid(rand(999,999999999))); session_id($sid); }
參考:
ini_set('session.auto_start', '0'); ini_set('session.save_path','/public_html/nowy/tmp'); if (isset($_POST["PHPSESSID"])) { session_id($_POST["PHPSESSID"]); } elseif (isset($_COOKIE['PHPSESSID'])) { session_id($_COOKIE["PHPSESSID"]); } elseif (isset($_GET["PHPSESSID"])) { session_id($_GET["PHPSESSID"]); } session_start(); setcookie("PHPSESSID", session_id(), time()+3600, "/"); if (!isset($_SESSION['user'])) { $_SESSION['user'] = 0; } if (!isset($_SESSION['initiate'])) { session_regenerate_id(); $_SESSION['initiate'] = true; $_SESSION['ip'] = $_SERVER['REMOTE_ADDR']; } echo ini_get('session.save_path').' '; echo $_POST["PHPSESSID"]; print_r($_SESSION);