Problem mit Update bei Loginsystem

BSA

Erfahrenes Mitglied
Hi leute!

Bin gerade dabei nen Usermanagement zu schreiben.
Mein Login auch soweit, ich habe einen Counter eingerichtet wie oft jeder User sich eingeloggt hat. Dazu folgendes Script:

PHP:
if($user['block'] == 1){
                    $loginStatus = "Du wurdest von einem Administrator gesperrt.";
                    $loginCheck = FALSE;
                } else {              
                    if($user['loginfail'] < 5){
                        if (mysql_num_rows($result) > 0){
                            $user = mysql_fetch_array($result);
    
                            $encrypted_pass = md5(md5($_POST['password']));
    
                            $result = mysql_query("SELECT id, username, password, login, usertype FROM users WHERE username='".mysql_real_escape_string($_POST['username'])."' AND password='$encrypted_pass'");
    
                            if (mysql_num_rows($result) > 0){
                                $user = mysql_fetch_array($result);
    
                                $encrypted_id = md5($user['id']);
                                $encrypted_name = md5($user['username']);
                                $usertype = $user['usertype'];
                                $encrypted_usertype = md5($user['usertype']);
    
                                $_SESSION['userid'] = $user['id'];
                                $_SESSION['username'] = $user['username'];
                                $_SESSION['encrypted_id'] = $encrypted_id;
                                $_SESSION['encrypted_name'] = $encrypted_name;
                                $_SESSION['usertype'] = $usertype;
                                $_SESSION['encrypted_usertype'] = $encrypted_usertype;
                                if($user['login'] == 1){
                                    Header("Location:rememberLogout.php");
                                    exit;
                                }
                                $loginStatus = 'Login erfolgreich';
                                $loginCheck = TRUE;
                                $time = time();
                                $mysql = new mysql_log();
                                $sql = $mysql->query("UPDATE users SET lastvisitDate = now(), loginfail = '0', logincount = logincount+1, login = '1', lastAction = '$time' WHERE username = '".$user['username']."' LIMIT 1");
    
                            } else {
                                $mysql = new mysql_log();
                                $sql = $mysql->query("UPDATE users SET loginfail = loginfail+1 WHERE username = '".mysql_real_escape_string($_POST['username'])."' LIMIT 1");
                                $loginStatus = 'Falsches Passwort';
                                $loginCheck = FALSE;
                                
                                $result = mysql_query("SELECT username, password, loginfail, blocktime FROM users WHERE username = '".mysql_real_escape_string($_POST['username'])."' LIMIT 1");
                                $user2 = mysql_fetch_array($result);
                                if($user2['loginfail'] == 5){
                                    $mysql = new mysql_log();
                                    $time = time()+60;
                                    $mysql->query("UPDATE users SET blocktime = '$time' WHERE username = '".mysql_real_escape_string($_POST['username'])."' LIMIT 1");
                                }
                            }
                        } else {
                            $loginStatus = 'Unbekannter Benutzername';
                            $loginCheck = FALSE;
                        }
                    } else {
                        if($user['blocktime'] > time()){
                            $loginStatus = 'Zu viele Loginversuche, der Benutzer ist für 1 Stunde gesperrt.';
                            $loginCheck = FALSE;                        
                        } else {                        
                            $mysql = new mysql_log();
                            $mysql->query("UPDATE users SET loginfail = '0' WHERE username = '".mysql_real_escape_string($_POST['username'])."' LIMIT 1");
                            $loginStatus = 'Zu viele Loginversuche, der Benutzer ist für 1 Stunde gesperrt.';
                            $loginCheck = FALSE;
                        }
                    }
                }
Dabei wird dieses Teil des Scripts scheinbar nicht ausgeführt, ich weiß nicht warum, sieht jemand den entscheidenden Fehler?

PHP:
$sql = $mysql->query("UPDATE users SET lastvisitDate = now(), loginfail = '0', logincount = logincount+1, login = '1', lastAction = '$time' WHERE username = '".$user['username']."' LIMIT 1");
 
Hi!

Danke für die Antwort, aber es funktioniert so auch nciht, die andere Variante hatte ja vorher auch schonmal Funktioniert, das Problem ist, das er den Programmcode scheinbar gar nicht aufruft, wenn ich da nen echo reinhaue dann gibt er das auch nicht aus.
Aber die Session registriert er...
 

Neue Beiträge

Zurück