
05/07/2007, 15:16
|
 | | | Fecha de Ingreso: diciembre-2005 Ubicación: Zapopan Jal.
Mensajes: 92
Antigüedad: 19 años, 3 meses Puntos: 12 | |
Re: Login seguro Dime si entendi, lo que quieres es saber si un usuario esta en linea, bueno pues puedes hacer lo siguiente: - Crea un directorio llamado "usuarios_en_linea/" (o como gustes)
- Crea un archivo llamado "arribota.php" (o como gustes) e introducelo en todas tus paginas con "include("arribota.php");" o "require("arribota.php");" como gustes, en la primera linea de los archivos, osea, arribota.
- En "arribota.php" ponle este codigo:
Código PHP: define("MAXIMO_DE_TIEMPO", 1);
$separa = explode(".php", $PHP_SELF);
$busca = explode("/", $separa[0]);
$encuentra = count($busca);
$lugar = $busca[$encuentra-1];
/////// Lo anterior es para saber en donde te encuentras actualmente
if(!file_exists("./usuarios_en_linea/{$AQUI_LA_ID_DEL_USUARIO}_ses.php")){
$crea = fopen("./usuarios_en_linea/{$AQUI_LA_ID_DEL_USUARIO}_ses.php", "w+");
}else{
$crea = fopen("./usuarios_en_linea/{$AQUI_LA_ID_DEL_USUARIO}_ses.php", "w+");
$uel = "./usuarios_en_linea/";
$abre_uel = opendir($uel);
while($lee_uel = readdir($abre_uel)){
if($lee_uel=="." || $lee_uel=="..")
continue;
$tiempo_uel [$lee_uel] = filemtime($uel."/".$lee_uel);
}
while(list($lista_uel)=each($tiempo_uel)){
$todo = "$lista_uel";
$ultima = strrpos($todo, '.');
$dame = substr($todo, 0, $ultima);
if($dame==""){
echo"";
}else{
$usuario = explode("_ses", $dame);
if(time() - fileatime("./usuarios_en_linea/{$AQUI_LA_ID_DEL_USUARIO}_ses.php") < MAXIMO_DE_TIEMPO * 180){
echo"";
}else{
unlink("./usuarios_en_linea/{$AQUI_LA_ID_DEL_USUARIO}_ses.php");
}
}
}
}
- Ahora solo queda por poner en el archivo donde quieres que aparesca si esta en linea o no un usuario el siguiente codigo:
Código PHP: if(file_exists("./usuarios_en_linea/{$AQUI_LA_ID_DEL_USUARIO}_ses.php")){
echo"El usuario esta en linea :)";
}else{
echo"El usuario ya se fue :(";
}
Espero que esto te ayude de algo.  Saludos!!
__________________ PD: Los acentos fueron secuestrados. |