creo que por aqui estaria el camino, prueba o parte desde este punto :
Código PHP:
if($HTTP_SESSION_VARS[usuarionline]==true){
$sql="select * from registros where usuario=$_SESSION[suarionline]";
$resultado = mysql_query($sql);
$mirar=mysql_fetch_array($resultado);
$datea=date("Y-m-d H:i:s");
$tapete=$mirar['fecha'];
$registro = (strtotime($datea)-strtotime($tapete));
if($registro >= 100){ //10 minutos para dias saca la cuenta :-)
$sqlborrar="update registros set fecha='0000-00-00 ' where user_id=$_SESSION[userionline]";
mysql_query($sqlborrar);
$_SESSION[userionline] ="";
session_unset();
session_destroy();
}
}
debes crear la tabla de base de datos con los campos fecha, usuarionline etccc lo que quieras
este codigo lo uso para cuando el usuario esta inactivo, deberias meter un codigo mas y una tabla en la base de datos, de tal forma que si es cero la fecha cargue en otra tabla algo asi como NO ADMITIDO, prueba creando una variable para la consulta no admitido luego cambia
if($HTTP_SESSION_VARS[usuarionline]==true){
por
if($variblenoadminitdo==true){
donde true debe ser verdadero si la cosulta No admitido es =0 y false si =1 o usando !=0 para false
entoces en cada pagina coloca la consulta a es tabla si el resultado es NO ADMITIDO no lo dejas loguearse tal vez debas hacer otros cambios pero no tengo tiempo ahora, creo que esta bien
de este modo si el usuario es logueado se deslogueara al terminar el tiempo, si intenta regresar no podra
saludos
PD: es solo un ejemplo sin testear .... pero creo que debe funcionar
POR QUE CON CADA RECARGA DE LA PAGINA EL VALOR $DATEA SE ACTUALIZARA
asi que piensa como dejarlo fijo y listo tienes tu codigo ......
tomando el valor de la fecha de otro campo de DB y hacer $datea=$mirar[fecha_fija];
pero me guele la cabeza me vo a dormir , aqui es argentina y son las cuatro de la madrugada....
saludos!!