我编写了一个脚本来限制我所在区域的会话数量。
所以我们有以下代码:
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 中限制了连接的数量,我确实将这个数字与会话数进行了比较,但会话数实际上是错误的。
任何形式的帮助将不胜感激。