您好我正在使用virtmart 2.0.14帮助开发的joomla 2.5.8商店中的废弃购物车模块。
现在我能够从joomla的会话表中找到一些相关数据,但我无法找到哪个阶段会话到期(例如,用户关闭浏览器或在结账的第1步退出或者用户退出或关闭结账或退出浏览器之前的浏览器。
所以,当他/她完全或关闭浏览器时,请帮助我或指导我获取用户状态。
答案 0 :(得分:1)
无法使用会话数据查找用户是否关闭浏览器或未关闭浏览器。会话数据存储在您的服务器上,并将根据您的服务器会话过期设置到期。
如果您真的想知道用户浏览器关闭状态,您需要编写一些特殊的javascript函数来检测浏览器何时关闭,并调用服务器ajax请求以使会话或某些其他功能到期。
答案 1 :(得分:1)
你需要一些像这样的代码:
private static function unserializeSession($session_data) {
try{
$method = ini_get("session.serialize_handler");
$dataArr = array();
switch ($method) {
case "php":
$dataArr = self::unserialize_php($session_data);
break;
case "php_binary":
$dataArr = self::unserialize_phpbinary($session_data);
break;
default:
$dataArr = false;
}
return $dataArr;
}
catch (Exception $e){
return false;
}
}
但是,你不应该费心去开发这样的模块。有许多第三方解决方案,例如Remarkety或Interamind,可以为您解决此问题。
小心,