Hallo,
das macht man gewöhnlich mit
<body onUnload="Unload()">
wobei Du in der Funktion Unload ein neues popup-Fenster öffnest, z.B.
so:
function Unload()
{ window.open("logout_test.php","LogoutWindow","width=100,height=100,menubar=no,locationbar=no,resizable=no,status=no,scrollbars=no");
}
Jetzt wird die Funktion Unload in 3 Fällen aufgerufen:
1. wenn die Seite aktualisiert wird
2. wenn eine andere url geladen wird
3. wenn das Fenster geschlossen wird
Das Logout sollte aber nur im Fall 2 oder 3 geschehen.
Deshalb muss in der Datei logout_test.php geprüft werden, welcher Fall vorliegt, möglich ist das durch
<script language="JavaScript">
window.moveTo(5000,5000);//Fenster ist nicht sichtbar
var chat_url="http://...";
if ((opener)&&(opener.location)&&(opener.location.href==chat_url))
window.close();//das Fenster wurde nur aktualisiert, nicht geschlossen
else location.href="logout.php";
</script>
in logout.php sollte noch ein window.close(); stehen, damit die Taskleiste beim Client wieder sauber ist.
MfG. Lutz T.