Tobias Kloth: Login-Script mit Fehlern

Beitrag lesen

Hallo rafi,

if(isset($_POST["passwort"]) && ($_POST["passwort"]=$adminpasswort)){

das ist wohl ein Fall für https://forum.selfhtml.org/?t=88857&m=530014 :-)

$logged_in = true;
$_SESSION["logged_in"];

mal abgesehen dass du - wie Sven schon schrieb - die Session überhaupt nicht startest, speicherst du hier auch nichts im Array $_SESSION, dafür müsstest du dem Array-Element den Wert schon zuweisen.

elseif(($_POST["passwort"]="") && (isset($logged_in))){

da bei dir register_globals auf on steht (sonst würde $PHP_SELF nicht funktionieren) und die Zuweisung $_POST["passwort"]="" vermutlich immer wahr ist, kann man sich durch anhängen von ?logged_in=1 an die Adresse einlogen. Du musst prüfen ob $_SESSION['logged_in'] gesetzt ist (warum $_POST['passwort'] leer sein muss, versteh ich allerdings nicht so ganz ...), außerdem solltest du register_globals auf off setzen ($PHP_SELF wird zu $_SERVER['PHP_SELF']).

Grüße aus Nürnberg
Tobias