Onlinestatus auf einer Website

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Onlinestatus auf einer Website

    Hallo, ich habe folgendes Problem:
    ich habe eine Website, bei der nach einem Login ein Sessioncookie generiert wird, indem sich dann ein Userhash befindet.

    Anhand des Userhashes werden dann Informationen über den aktuellen User ermittelt (aus einer Mysql-Datenbank).

    PHP-Code:
    <?php
    require_once ("_files/sql/read_member_record.php");
    require_once (
    "_files/sql/email_exists_check_db.php");
    require_once (
    "_files/validation/validation_functions.php");
    $sessionemail $_POST['email'];

    if (
    $_POST['submitted']) {
        
    $email $_POST['email'];
        
    $password_submitted $_POST['password1'];

    $valid verifyEmail ($email); 
    if (!
    $valid){ 

        
    $error_msg 1;
    }

    $valid verifyPassword ($password_submitted);
    if (!
    $valid){ 

        
    $error_msg 1;
    }

    if (!
    $error_msg) {
        
    $id checkEmail($email);
        
    $returnedRecord readMemberRecord($id);
        
    $password mysql_result($returnedRecord,0,'passwort');
        if (
    $password==$password_submitted){ 
        
    session_start();
    $_SESSION['logged_in']=1;
    $_SESSION'sessionemail' ] = $sessionemail;  
    $sessionName =$_SESSION'sessionemail' ];
    setCookie("eingeloggt"1time() + 60 60"/");
    include (
    "_includes/mysql_start.php"); 
    mysql_query("UPDATE 8d SET online = '1' WHERE id = '$my_id'"$connectID); 
    header ('Location: /Home');
           exit();
            }
    }
    }
    include (
    "_includes/funktions.php"); 
    include (
    "_includes/page_top_log.php"); 
    if (!
    $_SESSION['logged_in']) {
    print 
    "<form action=\"/Login\" method=\"post\">";
    print 
    '<label for="email">Email</label><br />
                <input name="email" type="text" id="email" class="MenuEmail"/><br />
                <label for="password1">Password<span></span></label><br />
                <input name= "password1" type="password" id="password1" class="MenuPassword" /><br />
                <input type="submit" value="Einloggen" name="submitted" class="button"/>
                </form>'
    ;
    }
    include (
    "_includes/page_bottom.php"); 
    ?>
    Mein Problem wäre nun, dass ich gerne anzeigen würde, ob sich ein User online befindet...oben ist das mit einem Eintrag in der Mysql-datenbank getan.

    Problem dabei..vergisst jemand sich auszuloggen und damit den Eintrag aus der Datenbank ändert, bleibt für immer online...

    Wie könnte ich es lösen, dass man sich nicht zwangsweiste ausloggen muss, trotzdem aber nicht mehr online erscheint?

  • #2
    den online status in der DB mit einem Timestamp versehen und immer wieder erneuern, wenn der älter als x Minuten wird ist der User wohl nicht mehr online sein
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      http://aktuell.de.selfhtml.org/artik...ik/useronline/
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        ok. danke.das hat mir weitergeholfen :-)

        Kommentar

        Lädt...
        X