tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
11
ZUGRIFFE
469
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Lektor21 Lektor21 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    334
    Hi!

    Komme irgendwie nicht weiter! Habe das folgende Loginscript gebastelt. Es funktioniert aber nicht! Also er registriert den user nicht!

    PHP-Code:
    <h3><b>Interner Bereich</b></h3>

    <?php

    if (!session_is_registered('user'))

    {

    if (isset(
    $login))
    {

    ################################
    $user_login "Admin";
    $password_login "admin";
    ################################

    if (($user == $user_login) && ($password == $password_login))
    {
    session_start();
    session_register("user");
    }
    }

    ?>

       <form method="POST" action="index.php?action=intern">
          <table border="0" style="border-width: 2px; border-style: dotted; border-color: #ff7b10;">
             <tr>
                <td rowspan="4"><img src="http://www.tutorials.de/forum/images/login.png" galleryimg="no"></img></td>
                <td><table border="0"><tr><td><img src="http://www.tutorials.de/forum/images/key.gif" galleryimg="no"></img></td><td valign="middle"><font color="#FF0000"><b>Bitte authentifizieren Sie sich!</b></font></td></tr></table></td>
             </tr>
             <tr>
                <td><table border="0"><tr><td valign="middle" width="5"><img src="http://www.tutorials.de/forum/images/icon.gif" galleryimg="no"></img></td><td><font color="#ff7b10"><b>Benutzername</b></font></td></tr><tr><td colspan="2"><input type="text" name="user" class="login" style="width: 200px; border-style: solid; border-width: 1px; border-color: #ff7b10; font-weight: bold; color: #FF0000;"></td></tr></table></td>
             </tr>
             <tr>
                <td><table border="0"><tr><td valign="middle" width="5"><img src="http://www.tutorials.de/forum/images/icon.gif" galleryimg="no"></img></td><td><font color="#ff7b10"><b>Passwort</b></font></td></tr><tr><td colspan="2"><input type="password" name="password" class="login" style="width: 200px; border-style: solid; border-width: 1px; border-color: #ff7b10; font-weight: bold; color: #FF0000;">&nbsp;<input type="submit" name="login" class="button" style="width: 100px;" value="Login"></td></tr></table></td>
             </tr>
          </table>
       </form>

    <?php

    }

    elseif ((
    session_is_registered('user')) && ($user == "Administrator"))

    {


    echo 
    "INTERNER BEREICH";


    }

    ?>
    Geändert von Lektor21 (19.02.08 um 16:57 Uhr)
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Die Lösung findest du in den FAQ
     

  3. #3
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Ich habe dich schon mehrmals auf mögliche Ursachen hingewiesen, unter anderem: die Nutzung der veralteten session_is_registered()-Funktion sowie die Nicht-Nutzung der vordefinierten Variablen.
     
    Markus Wulftange

  4. #4
    Lektor21 Lektor21 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    334
    Aber überall wo man hingoogelt wird das benutzt;

    session_is_registered()

    Was benutzt man denn stattdessen?

    Also meinst du $variable ist veraltet?
     

  5. #5
    Avatar von SCIPIO-AEMILIANUS
    SCIPIO-AEMILIANUS SCIPIO-AEMILIANUS ist offline aka DonMahallem
    Registriert seit
    Mar 2007
    Ort
    Saxonburg(Pa)
    Beiträge
    375
    Und was du auch noch abfragst ist eine Variabel
    Code :
    1
    
    if (isset($login))
    , die ich nirgends entdecken kann.
     
    MFG Scipio
    Ein Danke für hilfreiche Antworten ist gern gesehen.

  6. #6
    Lektor21 Lektor21 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    334
    Die VAriable $login rührt von dem Submit - Button!

    Also ich habs jetzt so;

    PHP-Code:
    <h3><b>Interner Bereich</b></h3>

    <?php

    if ($_SESSION['user'] != "Administrator")

    {

    if (isset(
    $login))
    {

    ################################
    $user_login "Admin";
    $password_login "admin";
    ################################

    if (($user == $user_login) && ($password == $password_login))
    {
    session_start();
    $_SESSION['user'] = $user;
    }
    }

    ?>

       <form method="POST" action="index.php?action=intern">
          <table border="0" style="border-width: 2px; border-style: dotted; border-color: #ff7b10;">
             <tr>
                <td rowspan="4"><img src="http://www.tutorials.de/forum/images/login.png" galleryimg="no"></img></td>
                <td><table border="0"><tr><td><img src="http://www.tutorials.de/forum/images/key.gif" galleryimg="no"></img></td><td valign="middle"><font color="#FF0000"><b>Bitte authentifizieren Sie sich!</b></font></td></tr></table></td>
             </tr>
             <tr>
                <td><table border="0"><tr><td valign="middle" width="5"><img src="http://www.tutorials.de/forum/images/icon.gif" galleryimg="no"></img></td><td><font color="#ff7b10"><b>Benutzername</b></font></td></tr><tr><td colspan="2"><input type="text" name="user" class="login" style="width: 200px; border-style: solid; border-width: 1px; border-color: #ff7b10; font-weight: bold; color: #FF0000;"></td></tr></table></td>
             </tr>
             <tr>
                <td><table border="0"><tr><td valign="middle" width="5"><img src="http://www.tutorials.de/forum/images/icon.gif" galleryimg="no"></img></td><td><font color="#ff7b10"><b>Passwort</b></font></td></tr><tr><td colspan="2"><input type="password" name="password" class="login" style="width: 200px; border-style: solid; border-width: 1px; border-color: #ff7b10; font-weight: bold; color: #FF0000;">&nbsp;<input type="submit" name="login" class="button" style="width: 100px;" value="Login"></td></tr></table></td>
             </tr>
          </table>
       </form>

    <?php

    }

    elseif (
    $_SESSION['user'] == "Administrator")

    {


    echo 
    "INTERNER BEREICH";


    }

    ?>
     

  7. #7
    Lektor21 Lektor21 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    334
    OK habs jetzt;

    Wenn ich aber die Seite besuche müsste er mir doch gleich das untere anzeigen!? Aber er zeigt mir zuerst das Loginformular an!

    PHP-Code:
    <h3><b>Interner Bereich</b></h3>

    <?php

    if (isset($login))
    {

    ################################
    $user_login "Admin";
    $password_login "admin";
    ################################

    if (($user == $user_login) && ($password == $password_login))
    {
    $_SESSION["user"] = $user
    }
    }

    if (!isset (
    $_SESSION["user"])) 

    {

    ?>

       <form method="POST" action="index.php?action=intern">
          <table border="0" style="border-width: 2px; border-style: dotted; border-color: #ff7b10;">
             <tr>
                <td rowspan="4"><img src="images/login.png" galleryimg="no"></img></td>
                <td><table border="0"><tr><td><img src="images/key.gif" galleryimg="no"></img></td><td valign="middle"><font color="#FF0000"><b>Bitte authentifizieren Sie sich!</b></font></td></tr></table></td>
             </tr>
             <tr>
                <td><table border="0"><tr><td valign="middle" width="5"><img src="images/icon.gif" galleryimg="no"></img></td><td><font color="#ff7b10"><b>Benutzername</b></font></td></tr><tr><td colspan="2"><input type="text" name="user" class="login" style="width: 200px; border-style: solid; border-width: 1px; border-color: #ff7b10; font-weight: bold; color: #FF0000;"></td></tr></table></td>
             </tr>
             <tr>
                <td><table border="0"><tr><td valign="middle" width="5"><img src="images/icon.gif" galleryimg="no"></img></td><td><font color="#ff7b10"><b>Passwort</b></font></td></tr><tr><td colspan="2"><input type="password" name="password" class="login" style="width: 200px; border-style: solid; border-width: 1px; border-color: #ff7b10; font-weight: bold; color: #FF0000;">&nbsp;<input type="submit" name="login" class="button" style="width: 100px;" value="Login"></td></tr></table></td>
             </tr>
          </table>
       </form>

    <?php

    }

    elseif (isset (
    $_SESSION["user"])) 

    {


    echo 
    "INTERNER BEREICH";


    }

    ?>
    Geändert von Lektor21 (19.02.08 um 17:59 Uhr)
     

  8. #8
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Mit Verwendung der vordefinierten Variablen würde das Ganze wie folgt aussehen:
    PHP-Code:
    if( isset($_POST['login']) ) {

        
    ################################
        
    $user_login "Admin";
        
    $password_login "admin";
        
    ################################

        
    if( isset($_POST['user'], $_POST['password']) && ($_POST['user'] == $user_login) && ($_POST['password'] == $password_login) ) {
            
    $_SESSION["user"] = $user;
        }
    }

    if( !isset(
    $_SESSION["user"]) ) {

        
    // …

    } else {

        echo 
    "INTERNER BEREICH";


     
    Markus Wulftange

  9. #9
    Lektor21 Lektor21 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    334
    Aber das müsste doch dann gespeichert bleiben oder?

    Also wenn ich die Seite aktualisiere, dann will er wieder, dass ich mich einlogge!?
     

  10. #10
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Initialisiert du denn auch die Sitzung über session_start()? Denn andernfalls verfallen die Variablenwerte nach der Verarbeitung des Skriptes beziehungsweise der Zeitpunkt der letzten Nutzung Sitzung wird nicht aktualisiert.
     
    Markus Wulftange

  11. #11
    Fabsch Fabsch ist offline Mitglied Gold
    Registriert seit
    Feb 2007
    Beiträge
    127
    Hallo,

    du musst session_start() immer aufrufen!
    Also nicht nur, wenn die Session-Variable gesetzt wird, sondern bei jedem Seitenaufruf (also am besten ganz oben)!

    Edit: War wohl etwas zu langsam

    MfG
    Fabsch
     

  12. #12
    Lektor21 Lektor21 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    334
    Alles klar!

    Es funktionier jetzt alles!

    Dankeschön erst mal
     

Ähnliche Themen

  1. keine ahnung
    Von cstyla im Forum Flash Plattform
    Antworten: 2
    Letzter Beitrag: 14.10.07, 14:41
  2. Keine Ahnung wie
    Von discoboy im Forum Visual Basic 6.0
    Antworten: 7
    Letzter Beitrag: 29.09.06, 15:25
  3. keine ahnung!
    Von spooX im Forum Photoshop
    Antworten: 1
    Letzter Beitrag: 07.02.04, 11:17
  4. Keine Ahnung
    Von Nino im Forum Fun-Forum
    Antworten: 10
    Letzter Beitrag: 12.08.02, 17:17
  5. keine ahnung
    Von freekazoid im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 26.04.02, 13:34