kostenloser Webspace werbefrei: lima-city


Wie kann man das machen???

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    gegen-aids

    gegen-aids hat kostenlosen Webspace.

    ICh habe bald ne login-prozedur und wie kann ich das machen das eine Seite nur angezeigt wird wenn man eingeloggt ist???
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Ganz einfach.
    Du prüfst ab ob die Session existiert.
    Oder mit was das Login-Script auch arbeitet.
  4. a**************s

    Ich habe eine Externe Datei die überprüft ob $_SESSION[\'id\'] existiert. Diese wird bei mir im loginskript gesetzt.
    Und dann include ich diese Datei in mein Skript.
    Die Datei sieht so aus:
    session_start();
    if(!isset($_SESSION[\'id\']))
    {
    echo \"<script language=\\\"Javascript\\\">\";
    echo \'alert(\"Du bist nicht berechtigt auf die Adminplattform zuzugreifen\");\';
    echo \"</script>\";
    die();
    }

  5. Also ich hab\' schon viele Login\'s geschrieben, und mit PHP ist die bewährteste Variante die, mit den Sessions...

    Schon richtig, das Login-Skript wertet erst einmal die eingegebenen Daten aus...

    Ich demonstriere mal an einem kleinen Beispiel (mit Logout):


    Verwendete Dateien:

    login.html
    check.php
    intern.php
    logout.php


    Skript\'s:

    login.html

    In dieser Datei ist der User aufgefordert, die Login-Daten anzugeben...

    <!DOCTYPE HTML PUBLIC \'-//W3C//DTD HTML 4.01 Transitional//EN\'>
    <html>
    <head>
    <title>
    Login
    </title>
    </head>
    <body>
    <h2>
    Login:
    </h2>
    <br>
    <br>
    <form name=\'f-login\' method=\'POST\' action=\'check.php\'>
    <b>
    Username:
    </b>
    <br>
    <input type=\'text\' name=\'user\'>
    <br>
    <b>
    Passwort:
    </b>
    <br>
    <input type=\'password\' name=\'pass\'>
    <br>
    <input type=\'submit\' name=\'submit\' value=\'Login!\'>
    </form>
    </body>
    </html>



    check.php

    Hier werden die von User angegebenen Userdaten geprüft...
    Hast du das \'the_users\'-System verstanden?
    Stattdessen könnte man auch die User aus einer Datenbank holen.

    Hast du das System verstanden, wie der Username kontrolliert wird, ob es ihn schon gibt?
    Ich hoffe doch, denn das ist schon leicht zu verstehen...

    Das gleiche mit dem Passwort.

    <?php
    $the_users = array();               //Das User-Array wird erstellt
    
    # $the_users[\'username\'] = \'passwort\';
    
    $the_users[\'admin\'] = \'adminpw\';    //Usernamen...
    $the_users[\'user1\'] = \'11111\';      //...und...
    $the_users[\'user2\'] = \'abcd-ef\';    //...Passwörter...
    $the_users[\'user3\'] = \'xyz321\';     //...werden zugeteilt!
    
    # Eingegebene Userdaten werden übergeben
    $user = htmlspecialchars(@$_POST[\'user\']);
    $pass = htmlspecialchars(@$_POST[\'pass\']);
    
    # Prüfungen
    if ($user != \'\' and $pass != \'\') {  //Wurden die Daten angegeben?
    if (isset($the_users[$user])) {     //Existiert der Username?
    if ($the_users[$user] == $pass) {   //Stimmt das Passwort?
    session_start();                    //Session wird gestartet...
    
    # Userdaten in die Session übergeben
    $_SESSION[\'user\'] = $user;
    $_SESSION[\'user\'] = $pass;
    
    # Der Auth-Parameter wird später noch gebraucht
    $_SESSION[\'auth\'] = true;
    
    # In den Internen-Bereich katapultieren
    header(\'Location: intern.php\');
    
    }
    else {
    echo \'Fehler!\';
    }
    }
    else {
    echo \'Fehler!\';
    }
    }
    else {
    echo \'Fehler!\';
    }
    ?>


    intern.php

    Hier wird zuerst geprüft, ob man eingeloggt ist (dafür ist der Auth-Parameter (siehe check.php)).
    Dann erst wird die Seite, oder ein Fehler angezeigt...

    <?php
    session_start();                            //Session starten
    
    # Prüfen: eingeloggt?
    if ($_SESSION[\'auth\'] == true) {
    
    # Ja, eingeloggt!
    echo \'Hallo und herzlich willkommen im internen Bereich...<br><br><a href=\\\'logout.php\\\'>Logout</a>\';
    
    }
    else {
    echo \'Fehler!\';
    }
    ?>


    logout.php

    Hier wird einfach nur die Session beendet und es wird auf die Login-Seite zurückgrführt...

    <?php
    session_start();
    
    @$_SESSION[\'auth\'] = false;
    @$_SESSION[\'user\'] = NULL;
    @$_SESSION[\'pass\'] = NULL;
    
    session_destroy();
    
    header(\'Location: login.html\');
    ?>



    Hoffe, das war verständlich...


    Das selbe Beispiel gibt\'s auf meiner Lima-HP...
    Der Link dazu: http://php-helper.lima-city.de/beispiele/login_1

    Es wurde dort der selbe Code verwendet, also sollten Usernamen und Passwörter klar sein...

    Ich kann nur hoffen, ich konnte helfen!


    Bei unverständlichkeiten: w/me
    Oder E-Mail: tom@55zwei.de
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!