ecshop的session機制是一個不錯的解決方案,但也有一些瑕疵,部分會員在操作時可能會出現登錄后自動退出或商品無法加入購車或購物車自動清空等情況,這個一方面
如是是因為用代理上網,ip不斷變化,可以參考的解決方法,另外也可以打開includes/cls_session.php找到
function gen_session_key($session_id)
{
static $ip = '';
if ($ip == '')
{
$ip = substr($this->_ip, 0, strrpos($this->_ip, '.'));
}
return sprintf('%08x', crc32(!empty($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] . ROOT_PATH . $ip . $session_id : ROOT_PATH . $ip . $session_id));
}
替換成
function gen_session_key($session_id)
{
static $ip = '';
if ($ip == '')
{
$ip = substr($this->_ip, 0, strrpos($this->_ip, '.'));
}
return sprintf('%08x', crc32(ROOT_PATH . $ip . $session_id));
}
就可以了
新聞熱點
疑難解答