[PHP] Kleines Login script ohne MySQL

Dieses Thema im Forum "Webentwicklung" wurde erstellt von smo_0chy, 29. April 2008 .

  1. 29. April 2008
    Kleines Login script ohne MySQL

    Huhu,

    arbeite jetzt seid wenigen Tagen mit PHP und versuche mich grade mit einem Loginscript für ein kleines Projekt...
    Hab viel mit Google und ein paar v2b Tutorials gearbeitet, aber viel Erfahrung habe ich leider nicht.
    Mit dem spärlichen Wissen hab ich dann einfach mal drauflosgeschrieben. Es fehlt noch die Verbindung zu einer MySQL Datenbank und die Möglichkeit sich auszuloggen. Aber das is erstmal nicht wichtig; würd nur gern wissen ob das Script sicher ist und ob das so in ordnung wäre, in Sachen sauberer Schreibweise zB; damit ich dann darauf weiter aufbauen kann...(Cookie, Logout, Datenbank, etc)

    PHP:
    <?
    session_start ();

    $user_name  "test_acc" ;
    $user_pass  "supersicher" ;
    ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Login script</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>

    <?php

    if (isset( $_SESSION [ 'user' ]) && isset( $_SESSION [ 'pw' ])) {
        echo 
    'Geheimer Bereich...' ;
    }
    else {

        if (isset (
    $_POST [ 'user' ]) && isset( $_POST [ 'pw' ])) {
            if (
    $_POST [ 'user' ] ==  ""  OR  $_POST [ 'pw' ] ==  "" ) {
                echo 
    "<b>Bitte fülle beide Felder aus!</b>" ;
            }
            elseif (
    $_POST [ 'user' ] !=  $user_name  OR  $_POST [ 'pw' ] !=  $user_pass ) {
                echo 
    "<b>Falsch...</b>" ;
            }
            elseif (
    $_POST [ 'user' ] ==  $user_name  AND  $_POST [ 'pw' ] ==  $user_pass ) {
                
    $_SESSION [ 'user' ] =  $_POST [ 'user' ];
                
    $_SESSION [ 'pw' ] =  $_POST [ 'pw' ];
                
    session_regenerate_id ();
                echo 
    '<meta http-equiv="refresh" content="0">' ;
            }
        }
    }


    if (isset(
    $_SESSION [ 'user' ]) && isset( $_SESSION [ 'pw' ])) {
        
    printf ( '<br /><br />Willkommen <b>%s</b>.' ,
            
    htmlspecialchars ( $_SESSION [ 'user' ]));
    }
    else {
        if (
    $_POST [ 'user' ] ==  $user_name  AND  $_POST [ 'pw' ] ==  $user_pass ) {
        echo 
    "Du wirst weitergeleitet..." ;
        }
        else {
        echo 
    '<form name="login" method="post" action="' . $_SERVER [ 'PHP_SELF' ]. '">User Name: <input type="text" name="user"> User Passwort:  <input type="password" name="pw"><input type="submit" name="Submit" value="einloggen"></form>' ;
        }
    }

    ?>

    </body>
    </html>
    Bin für alles offen, tobt euch ruhig aus...
    Danke im Voraus,
    smo_0chy
     
  2. 29. April 2008
    AW: Kleines Login script ohne MySQL

    in deinem fall vergleichst du einfach zwei variablen mit einander^^ man könnte nur unbefugt eindringen wenn man dir/nem user die session-id klaut.

    unsicher wird erst wenn du wirklich mit ner datenbank arbeitetest und user-eingaben ned überprüfst.
     
  3. 29. April 2008
    AW: Kleines Login script ohne MySQL

    von der schreibweise her isses okay, ich versteh allerdings nich ganz, wieso du denn umweg über die sessions gehst xD

    mfg
    fake
     
  4. 30. April 2008
    AW: Kleines Login script ohne MySQL

    was du auf jedenfall noch machen kannst is nich die werte an sich sondern nur nen hash vergleichen is noch mal n stück sicherer. wenn jemand die php seite in die finger kriegt kann er damit auch nich viel anfangen

    zb. md5()

    wenn du das ganze iwann ma mit db machst solltest du noch darauf achten die strings nicht direkt vom post reinzuschreiben, sonder sie erst zu "entschärfen"...sonst kann ma dir die ganze db löschen
     
  5. 1. Mai 2008
    AW: Kleines Login script ohne MySQL

    Wie meinst du das?^^
    Was gäb es denn für Alternativen außer cookies?

    Ist es möglich bei jedem seiten refresh/wechsel die sid zu verändern, in etwa wie session_regenerate_id()... ; und wenn ja, wie stell ich das am besten an?

    Danke im Voraus,
    Bewertung is sicher...
     
  6. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.