Tema: Login seguro
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/07/2007, 15:16
Avatar de Atomycko
Atomycko
 
Fecha de Ingreso: diciembre-2005
Ubicación: Zapopan Jal.
Mensajes: 92
Antigüedad: 18 años, 4 meses
Puntos: 12
Sonrisa Re: Login seguro

Dime si entendi, lo que quieres es saber si un usuario esta en linea, bueno pues puedes hacer lo siguiente:
  1. Crea un directorio llamado "usuarios_en_linea/" (o como gustes)
  2. 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.
  3. 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($todo0$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");
          }
        }
      }

  4. 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.