Trotzt erforderlichen Session Wert Scriptabbruch

  • Hey,


    ich habe jetzt einen neuen Rang zu meinem Projekt hinzugefügt. Nun möchte ich die Überprüfung des Rangs erweitern um den Masteradmin.

    Habe ich auch gemacht. Obwohl in der Session "Rang" Masteradmin drinsteht, auf was ich prüfe wird das Script abgebrochen. Ich bin grad ratlos.


    Wenn ich die Session Rang ausgebe kommt dies raus: string(11) "masteradmin"


    Wenn ich nun entweder die Überprüfung auf admin oder masteradmin weglasse funktioniert das, was ich nicht nachvollziehen kann. Es ist doch ein OR. Also muss nur eine Bedingung richtig sein.


    Meine Überprüfung ist folgende:

    PHP
    if(isset($_SESSION["rang"])){
    
            if($_SESSION['rang'] !== "masteradmin" || $_SESSION['rang'] !== "admin"){
                echo "<p class='text-danger text-center'>Dieser Bereich ist für Sie nicht zugängig!</p>";
                exit();
            }
        }

    Warum wird das exit() ausgeführt ?



    Grüße,

    Stef

  • Ne, das ist ein klassischer Logikfehler. ;)


    Du bekommst immer true!

    1. Ich bin masteradmin => true
      rang !== 'masteradmin' => false
      rang !== 'admin' => true
    2. Ich bin admin => true
      rang !== 'masteradmin' => true
      rang !== 'admin' => false
    3. Ich bin nix => true
      rang !== 'masteradmin' => true
      rang !== 'admin' => true
  • Hey,


    Danke für eure Antworten.


    Ich habe nochmal selbst rumgetestet und kam auch wie ihr auf das &&.

    Es war von mir heute morgen ein Denkfehler.


    Jetzt funktioniert es :)


    Grüße,

    Stef

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!