我有一個網站正在創建,我希望能夠看到誰在線和誰不在。查看誰在線並不困難,當您登錄時,數據庫中的「在線」字段將從0更改爲1。但問題在於脫機。我沒做到這一點IF人註銷的註銷按鈕,然後被轉到頁logout.php:關閉瀏覽器更新數據庫關閉
<?php
session_start();
$user_check=$_SESSION['login_user'];
if(session_destroy())
{
$connection = mysql_connect("localhost", "root", "");
$db = mysql_select_db("masterrad", $connection);
$query2 = mysql_query("update users set online = '0' where username = '$user_check'", $connection);
header("Location: index.php");
}
?>
但如果他只是關閉網頁什麼都不會更改數據庫中的,因爲他從來沒有去到logout.php頁面。
所以我想知道是否有更好的方法來做到這一點?
會話將自動刪除自己,具體取決於您如何設置服務器的會話壽命。更新,那是另一個麻線球。谷歌「如果瀏覽器關閉,更新數據庫」。你會發現很多結果。 – 2015-01-20 22:02:39
這是一個可怕的想法,但是你可以有一個「心跳」系統,每隔x分鐘發送一次ajax請求。如果您沒有收到答案,請將其標記爲離線。 – 2015-01-20 22:03:04
是的,「心跳」__是一個可怕的想法。 – Kleskowy 2015-01-20 22:06:49