WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Einfaches PHP Login ohne DB (http://www.wcm.at/forum/showthread.php?t=169680)

mendaxx 12.07.2005 00:09

Einfaches PHP Login ohne DB
 
Hallo!

Der Hoster meines Freundes erlaubt leider kein .htaccess, bzw. .htpasswd, wodurch ich gezwungen bin, das gefragte Verzeichnis mit PHP zu schützen. Grundsätzlich kann ich das ja, allerdings bisher nur mit Hilfe einer Datenbank. Habe natürlich der Einfachheit halber mal gegooglet, aber die Scripts sind alle zu aufwendig. Ich will keine Registrierung, kein Lost-Password usw. nur irgendwo User und Pass gesichert abspeichern (geschützte .txt-Datei?) und die index.php in dem Verzeichnis damit sichern.

Ich danke schon im Voraus für eure Hilfe :)

mendaxx 12.07.2005 00:28

Habe grad noch ein Problem entdeckt:
Eine Testdatei mit phpinfo() lässt sich problemlos ausführen, sobald ich aber eine selbst erstellte .php-Datei hochlade, bietet sie mir der Server nur zum herunterladen an. Wasisjetzlos? :confused:

-EDIT-
Hab herausgefunden, dass der Hoster edserver.net ist. Der Webspace funktioniert zwar, allerdings scheint mir, dass auf diesem Server sonst gar nichts mehr geht. Weiß vielleicht jemand genaueres über edserver.net?

Wenn das nichts wird, dann werde ich wohl empfehlen, mit dem gesamten Ding zu migrieren :confused:

Who-T 12.07.2005 04:59

Code:

$authenticated = false;
$combinations = file("passwords.txt")
foreach ($combinations as $combination)
{
    $userdata = split(":", $combinaton);
    if ($userdata[0] == $_POST["username"] && $userdata[1] == md5($_POST["password"]))
    {
        $authenticated = true;
        break;
    }
}

if (!$authenticated)
    die("Sorry, correct password required);

// do secret stuff

passwords.txt schaut dann so aus
Code:

mendaxx:FE234922918323...EF
das passwort ist md5 verschluesselt.


das sollts in etwa sein. ich hab den code nicht getestet.


ad herunterladen von php dateien: das passiert z.b. wenn der server kein php parsed. parsing von php dateien ist abhaengig von der dateieindung, ueberpruef dass deine und die testdatei dieselbe endung haben.

sagi 12.07.2005 05:03

Am einfachsten geht es wohl mit einem Array:

Code:

$users[0]['username'] = 'user1';
$users[0]['password'] = 'verysecret';
$users[1]['username'] = 'user2';
$users[1]['password'] = 'secret';
...

diese Datei bindes du dann mittels include() ein und durchläufst $users in einer foreach() Schleife.

mfg
c.

sagi 12.07.2005 05:08

@Who-T:

Deine Lösung ist natürlich schöner, nur könnte es ein Problem werden die passwords.txt gegen direktes aufrufen abzusichern, wenn keine .htaccess erlaubt sind - auch wenn die Passwörter nur als md5 Summen gespeichert werden.

mfg
c.

Who-T 12.07.2005 05:26

@sagi
Ich weiss, aber die frage ist wie sicher die passwoerter sein muessen.

anyway. einfache loesung waere:

statt passwords.txt ein passwords.php, die datei schaut dann so aus:

Code:

<? $string="
user:123412341234
"?>

dann einfach ein array_shift() und array_pop() ausfuehren und alles is gut :)

mendaxx 12.07.2005 18:58

Danke für die Antworten!

Die Dateiendungen sind natürlich bei allen .php-Dateien identisch. Das Problem muss tiefer sitzen. Wie schon erwähnt, scheint der Hoster selbst nicht mehr zu existieren ... wie auch immer das funktionieren mag :confused:


Alle Zeitangaben in WEZ +2. Es ist jetzt 02:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag