Login.php - Frage zu if und else

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

  • Login.php - Frage zu if und else

    Hallo Zusammen,

    ich habe noch mal eine kleine Frage zu dem Login Skript von mrhappiness.

    PHP-Code:
    if (!logged_in())
        echo 
    '<form method="post" action="login.php">
            <label>Benutzername:</label><input name="username" type="text"><br>
            <label>Passwort: </label><input name="userpass" type="password" id="userpass"><br>
            <input name="login" type="submit" id="login" value="Einloggen">
        </form>'
    ;
    else
       echo 
    '<p /><a href="logout.php">Ausloggen</a>';
       echo 
    '<p /><a href="pruefdaten.php">Test</a>';
       echo 
    '<p /><a href="logged_in.php">Check</a>'
    Soweit ich es verstehe, wird in der if-Verzweigung der Fall abgefangen, dass man (aus welchen Gründen auch immer) nicht eingeloggt ist und bekommt das Formular noch mal angezeigt.

    Ist man aber eingeloggt, so kommt die else-Verzweigung ins Spiel. Hier wird mir der Link zum Ausloggen erst angezeigt. Ich bin davon ausgegangen, dass mir die untenstehenden beiden Links der else-Verzweigung auch erst dann angezeigt werden, wenn ich eingeloggt bin.
    Leider werden diese mir immer angezeigt. Wer es überprüfen will, hier der Link: http://dybi.homeip.net/~sd/tpklogin/login.php

    Nun meine Frage, wieso werden mir diese angezeigt bzw. wie bewerkstellige ich es, dass mir diese wie der "Ausloggen" Link nur gezeigt werden, wenn ich eingeloggt bin?

    Für jeden Tipp bin ich dankbar!

    Gruß
    Dybi

  • #2
    Irgendwie sieht dein Coder anders aus als meiner: http://www.php-resource.de/tutorials/read/38/4/
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      nun habe ich mein login.php genau durch deines ersetzt ( durch paste + copy) und in der else- Verzweigung unter dem Link "Ausloggen" einen weiteren gesetzt.

      Und dieser wird mir immer noch angezeigt, auch wenn ich nicht eingeloggt bin. Ich habe bisher immer gedacht, dass wenn in der Bedingung etwas angegeben ist, was im if wahr ist und in else unwahr, dann wird, wenn die Bedingung unwahr ist, auch alles unter else abgearbeitet.

      Beir mir wird in der else Verwzeigung aber immer nur der Link angezeigt, wenn ich eingeloggt bin, der an erster Stelle steht. Die weiteren werden mir auch dann angezeigt, wenn ich nicht eingeloggt bin.

      Ich kann nicht genau nachvollziehen, warum das so ist....

      Kommentar


      • #4
        oh je, da stand ich aber ziemlich auf dem Schlauch.
        an meiner Syntax hats gelegen.

        nach dem ich mir dein Skript noch mal näher angeschaut habe, habe ich es nun auch begriffen..

        Thanx


        Schönen Abend noch

        Gruß
        Dybi

        Kommentar

        Lädt...
        X