所以基本上我的服务器上有这个脚本,可以让我的面板上的所有用户保持最新的.net许可系统,但由于某些原因,有些用户在绝对不会离线时没有连接到服务器。
基本上每次用户办理登机手续时(每分钟),都会在登记时更新帐户。然后我会使用以下脚本检查用户的入住时间是否落后2分钟它现在是,所以它会在2分钟内将它们设置为离线状态。
我的问题是,它适用于大多数用户,但有9%的用户在检查时不会离线,而且似乎没有错误,除非我错了,任何人都可以帮助我在解决这个简单的问题?
PHP SCRIPT:
$SQLGetUsers = $odb -> query("SELECT * FROM Account");
while ($getInfo = $SQLGetUsers -> fetch(PDO::FETCH_ASSOC))
{
$id = $getInfo['id'];
$lastlogon = $getInfo['lastlogon'];
$time = time();
$timeouttime = ($time - 120);
if ($lastlogon <= $timeouttime)
{
$odb->exec("UPDATE Account SET `online` = '0' WHERE `id` = '$id'");
}
$odb->exec("OPTIMIZE TABLE Account");
}
我知道这是一个糟糕的脚本,但这是我个人知道执行这个特定命令的唯一方法。感谢任何可以提供帮助的人!