Check the new version here

Popular channels

Usuarios Online en php

Funcion para Conectar el usuario y contar los conectados

function onlines($nick,$tiempo = 300,$file = 'online.txt'){ //esto conecta y da la cantidad de conectados
?>">$time = time()+$tiempo;
$id = $nick;
$file_open = @file_get_contents($file);
$expt = explode("||",$file_open);
for($e = 0;$e < count($expt);$e++){
$exp = explode("|",$expt[$e]);
if($exp[1] > time()){
$users[] = $exp[0];
if($id == $exp[0]){
$user_exist = true;
$fp = @fopen($file,'w+');
$remplazar_que = $exp[0]."|".$exp[1]."||";
$remplazar_por = $exp[0]."|".$time."||";
@fwrite($fp,str_replace($remplazar_que,$remplazar_por,$file_open));
}
}else{
if($id == $exp[0]){
$user_exist = true;
$fp = fopen($file,'w+');
$remplazar_que = $exp[0]."|".$exp[1]."||";
$remplazar_por = $exp[0]."|".$time."||";
fwrite($fp,str_replace($remplazar_que,$remplazar_por,$file_open));
}else{
desconectar($exp[0]);
}
}
}
if(empty($user_exist) && $id){
$fp = fopen($file,'a+');
$agregar = $id."|".$time."||";
fwrite($fp,$agregar);
}
return count($users);
}



Funcion para listar todos los nick conectados

function conectados($file = 'online.txt'){ //para listar todos los nicks conectados
if(file_exists($file)){
$get = file_get_contents($file);
$expt = explode('||',$get);
if($expt){
foreach($expt as $data){
$exp = explode("|",$data);
if($exp[1] >= time()){
$nicks[] = $exp[0];
}
}
}
}
return ($nicks) ? $nicks : false;
}




Funcion para veificar si esta conectado el nick


function conectado($nick,$file = 'online.txt'){ //si no esta conectado el nick esto da false
$id = $nick;
$file_open = file_get_contents($file);
$expt = explode("||",$file_open);
for($e = 0;$e < count($expt);$e++){
$exp = explode("|",$expt[$e]);
if($exp[1] > time()){
if($id == $exp[0]){
$online = true;
}
}else{
$fp = fopen($file,'w+');
$eliminar = $exp[0]."|".$exp[1]."||";
if($datos = str_replace($eliminar,"",$file_open)){
$desconectado = true;
}
fwrite($fp,$datos);
}
}
return $online;
}



Funcion para Desconectar



function desconectar($nick,$file = 'online.txt'){ //esto desconecta el nick seleccionado
$id = $nick;
$file_open = file_get_contents($file);
$expt = explode("||",$file_open);
for($e = 0;$e < count($expt);$e++){
$exp = explode("|",$expt[$e]);
if($id == $exp[0]){
$fp = fopen($file,'w+');
$eliminar = $exp[0]."|".$exp[1]."||";
if($datos = str_replace($eliminar,"",$file_open)){
$desconectado = true;
}
fwrite($fp,$datos);
}
}
return $desconectado;
}

0No comments yet