您的位置:首页 > 运维架构

ecshop用户登录问题及ecshop购物车问题解决办法

2016-03-16 00:00 197 查看
关于ecshop2.7.0在部分IE浏览器下丢$_SESSION的问题、ecshop 用户登陆后自动跳出的问题

经查常是$_SESSION丢失,在网上查找发现IE6也有不少SESSION丢失的问题,这时,就要通过COOKIE来找回登录状态,但是 includes\modules\integrates\ecshop.php这个整合自身会员的类中没有重写integrate.php中的check_cookie()方法导致,验证cookie时返回的username为空,丢失了登录状态,在ecshop.php中重写了此方法后一切正常了:

/**
* 检查cookie
*
* @access  public
* @param
*
* @return void
*/
function check_cookie ()
{
if ( isset($_COOKIE['ECS'])  && isset($_COOKIE['ECS']['user_id'])  && isset($_COOKIE['ECS']['password']))
{
$ecs_user_id   = $_COOKIE['ECS']['user_id'];
$ecs_user_pass = $_COOKIE['ECS']['password'];
$sql = "SELECT " . $this->field_name ." AS user_name".
" FROM " . $this->table($this->user_table) .
" WHERE ".$this->field_id." = '$ecs_user_id' AND ".$this->field_pass." = '$ecs_user_pass'";
$username = $this->db->getOne($sql);
if ($username && ($this->charset != 'UTF8'))
{
$username = ecs_iconv($this->charset, 'UTF8', $username);
}
return $username;
}
else
{
return '';
}
}


转载自:http://www.9958.pw/post/ecshop_login_cart
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ecshop