vinpkl Posted November 22, 2008 Share Posted November 22, 2008 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 Quote Link to comment Share on other sites More sharing options...
Mchl Posted November 22, 2008 Share Posted November 22, 2008 Maybe try onunload="window.location = 'customer_logout.php';" or something along these lines... I'm not good at JS ;P Quote Link to comment Share on other sites More sharing options...
xtopolis Posted November 23, 2008 Share Posted November 23, 2008 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); }; Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.