2014-01-30 104 views
0

你好,我想更新每10秒(有點像心跳)LastActive行,所以我寫了這個:檢查用戶是否在線

$(document).ready(function() 
{ 
    var checkOn = setInterval(function() 
    { 
     $.get("cm/check-online.php"); 
    }, 10000); 
}); 

<?php 
    require_once("config.php"); 

    $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); 

    $my_id = $_SESSION['z_id']; 

    $q_update_myself = "UPDATE acc SET LastTimeActive='NOW()' AND LoggedIn='1' WHERE z_id='$my_id'"; 
    $do_q_update_myself = mysqli_query($dbc, $q_update_myself); 
?> 

但是,這並不工作,我不知道如何解決它:|我需要這個,因爲我使用腳本來處理所有用戶,如果他的LastTimeActive> 30,那麼它將「LoggedIn」設置爲0.

而且它不起作用,因爲LastTimeActive與join_date一樣。 ..它不會改變。

+3

定義 「不工作」 – zerkms

+1

'LastTimeActive = 'NOW()''---你知道你要指定一個字符串' 'NOW()''在這裏嗎? – zerkms

+0

是你的劇本,甚至叫? – zerkms

回答

0

有您檢查從PHP腳本AJAX呼籲

你需要每天都這樣,你訪問它之前訪問會話頁面上讓你Z_id會議無功:

session_start(); 

做到這一點爲你工作?

<?php 
require_once("config.php"); 
session_start(); 

$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); 

$my_id = $_SESSION['z_id']; 
$time_now = date("Y-m-d H:i:s") 

if(isset($my_id) && !empty($my_id)){ 
$q_update_myself = "UPDATE acc SET LastTimeActive='$time_now' AND LoggedIn='1' WHERE z_id='$my_id'"; 
$do_q_update_myself = mysqli_query($dbc, $q_update_myself); 
}else{ 
//error No Z_ID 
} 
?> 
+0

謝謝你,作品...我也改變了我的查詢,因爲「,」丟失了:) – user3251400