0

我编写了一个脚本来限制我所在区域的会话数量。

所以我们有以下代码:

if ( $d = opendir( session_save_path()  )  ) {
        $count = 0;
        $session_timeout = 3*600;
        while ( false !== ( $file = readdir( $d )  )  ) {
            if ( $file != '.' && $file != '..' ) {
                if ( time()- fileatime(session_save_path() . '/' . $file) < $session_timeout ) {
                      $count++;
                }
            }
        }
    }
    if($count>$societe['max_utilisateurs'])
    {
        $sql="INSERT INTO `session` SET
`temps` = now(),
`login`='".$_SESSION['login']."',
`mouvement`='2'";  
mysql_query($sql) or die;
session_unset();  
session_destroy();  
header('Location: ../');  
exit();  
    }; 

问题是当我回显 $count 时它显示 2。但问题是我是唯一在线的用户。我在 mysql 中限制了连接的数量,我确实将这个数字与会话数进行了比较,但会话数实际上是错误的。

任何形式的帮助将不胜感激。

4

0 回答 0