Hopsel: nach Login gültigen Account prüfen

Beitrag lesen

Hi kEv*!

So soll es aussehen.

Ja, aber wo ist dein Problem?

Exit löst deine Probleme nicht. Damit brichst du das Script nur ab.

Verständlicher? Ich möchte gern die Fehler bzw. den Status der Abfrage nicht verallgemeinern und somit eine Meldung ausgeben.

Dann tu das doch. ;-)

Zu deiner Fehlerbehandlung:
Du musst ja zurück auf die Loginseite leiten und dort ggf. eine Fehlermeldung ausgeben. Sinnvoll ist es, jedem Fehler eine ID zu verpassen. Unter dieser ID ist der Fehler dann auffindbar.

Möglich wäre z. B. folgendes:

define('ERROR_INVALIDLOGIN',1);  
define('ERROR_LOCKEDACCOUNT',2);  
define('ERROR_3',4);  
define('ERROR_4',8);  
define('ERROR_FOO',16);  
define('ERROR_BAR',32);  
// Wichtig: Zweierpotenzen, die nicht doppelt vorkommen dürfen!  
// Bei größeren Projekten mit mehr Fehlermeldungen  
// kann es sinnvoll zu sein, auf fortlaufende IDs  
// zurückzugreifen.  
// Dann muss man natürlich anders auf den jeweiligen  
// Fehler überprüfen.  
  
$ERROR = array(  
            ERROR_INVALIDLOGIN => array(  
                'level' => 2,  
                'msg' => 'Ungültiger Login [bla bla bla].'  
            ),  
            ERROR_LOCKEDACCOUNT => array(  
                'level' => 1,  
                'msg' => 'Account gesperrt [bla bla bla].'  
            ) // ...  
        );

Bei einem Fehler setzt du einfach die Fehlerkonstante mit einer Sessionvariable:

$_SESSION['error'] += ERROR_FOO;

Auf deiner Loginseite musst du dann auf den Fehler überprüfen:

// Fehler?  
if($_SESSION['error'] & ERROR_BAR) {  
  // Fehler soundso  
  // Um auf einen Fehler zuzugreifen:  
  tuwas_mit($ERROR[ERROR_INVALIDLOGIN ]['level']);  
  // ...  
}

Ich hoffe, das hilft dir weiter.

MfG H☼psel

--
"It's amazing I won. I was running against peace, prosperity, and incumbency."
George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)