Jump to content

destroying session on closing browser tab or body unload


vinpkl

Recommended Posts

hi all

 

i have my logout.php which destroys sessions and session ids on click of logout buton. I want to have same effect means i want to call this logout.php script when the user closes the "browser tab".

 

as these are the days of "browser tabs" so this is very important for me.

 

when the user closed the whole browser or logout then all session and session ids are destroyed automatically but these sessions are not destroying when the user closes the "browser tab".

 

I have tried ajax also but not able to get the result as i m not much in ajax. So it would be great if somebody helps me with calling my logout.php script on closing "browser tab".

 

any other method is also welcome.

 

This is ajax script

<script type="text/javascript">
function ajaxFunction()
{
var xmlHttp;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    try
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    catch (e)
      {
      alert("Your browser does not support AJAX!");
      return false;
      }
    }
  }
  xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
      document.myForm.time.value=xmlHttp.responseText;
      }
    }
  xmlHttp.open("GET","customer_logout.php",true);
  xmlHttp.send(null);
  }
</script>

 

This is my customer_logout.php script

 

<? require_once("config.php");
$unique_id = session_id(); 
session_regenerate_id();
$qry="delete from cart_table where unique_id='$unique_id'";
mysql_query($qry);
$_SESSION = array(); 
session_unset();
session_destroy();
header("Location:index.php"); 
?>

 

This is i calling ajax in body of page

<body onunload="ajaxFunction()">

 

vineet

 

http://www.quirksmode.org/js/cookies.html

 

Perhaps use the onunload function to overwrite and expire the existing session cookie.

Note, untested.

  window.onunload = function(){
    document.cookie =
      'PHPSESSID=; expires=Fri, 3 Aug 2001 20:47:11 UTC; path=/'
      alert(document.cookie);
  };

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.