Hallo zusammen und bitte um Hilfe!
Ich hab mir mühsam - als blutiger Anfänger - aus einigen Befehlen und aus Vorlagen ein Login-Script zusammengebastelt, welches "fast" funktionert.
Es geht darum, dass auf der zu schützenden Seite nur das Passwort relevant ist. Die Besucher sehen beim Loginformular nur 1 Eingabefeld. User gibt es keinen. Dieses Passwort wird dann mit den in der Datenbank gespeicherten Codes (ohne MD5 Verschlüsselung) verglichen und lässt bei Übereinstimmung den Zugriff zu oder eben nicht. (Nur zum Verständnis der Hintergrund der ganzen Sache: Es ist wie ein Aktionscode, den die Nutzer da eingeben. Den Code erhalten sie in meinem Lokal. Auf der geschützten Seite sind dann diverse Goodies zum runterladen.)
Alles funktioniert. Falsche Code - kein Zugriff. Richtiger Code - Zugriff gewährt.
Jedoch: Wenn man gar keinen Code eingibt, landet man dennoch auf der geschützten Seite.
Wieso das ? Kann mir da irgendjemand von Euch Profis bitte mal weiterhelfen ? Und erklären, was da zu tun ist ?
Hier das Login-Script:
Von da an gehts dann auf die geschütze Seiten, in denen ich folgendes ganz am Anfang eingefügt habe:
Und wie beende ich nun die Session ?
Eigenes Script welches über einen Button aufgerufen wird ?
Oder muss das auf irgendeine Seite ?
Ihr seht - ich bin echt blutiger aber sehr interessierter Anfänger und bitte echt um Hilfe.
Danke schon mal!
Ich hab mir mühsam - als blutiger Anfänger - aus einigen Befehlen und aus Vorlagen ein Login-Script zusammengebastelt, welches "fast" funktionert.
Es geht darum, dass auf der zu schützenden Seite nur das Passwort relevant ist. Die Besucher sehen beim Loginformular nur 1 Eingabefeld. User gibt es keinen. Dieses Passwort wird dann mit den in der Datenbank gespeicherten Codes (ohne MD5 Verschlüsselung) verglichen und lässt bei Übereinstimmung den Zugriff zu oder eben nicht. (Nur zum Verständnis der Hintergrund der ganzen Sache: Es ist wie ein Aktionscode, den die Nutzer da eingeben. Den Code erhalten sie in meinem Lokal. Auf der geschützten Seite sind dann diverse Goodies zum runterladen.)
Alles funktioniert. Falsche Code - kein Zugriff. Richtiger Code - Zugriff gewährt.
Jedoch: Wenn man gar keinen Code eingibt, landet man dennoch auf der geschützten Seite.
Wieso das ? Kann mir da irgendjemand von Euch Profis bitte mal weiterhelfen ? Und erklären, was da zu tun ist ?
Hier das Login-Script:
PHP:
<?php
session_start();
?>
<?php
//Abschalten der nervigen NOTICE Meldung...
error_reporting(E_ALL & ~ E_NOTICE);
//DB Verbindung herstellen
$verbindung = mysql_connect("datenbankserver", "dbusername" , "dbpasswort")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("datenbankname") or die ("Datenbank konnte nicht ausgewählt werden");
//$username = $_POST["username"];
//$passwort = md5($_POST["password"]); Nur Passwortabfrage und ohne MD5
$passwort = $_POST["password"];
//$abfrage = "SELECT username, passwort FROM login WHERE username LIKE '$username' LIMIT 1";
$abfrage = "SELECT passwort FROM login WHERE passwort LIKE '$passwort' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
if($row->passwort == $passwort)
{
$_SESSION["username"] = $passwort;
echo "Login erfolgreich. <br> <a href=\"geheim.php\">Geschützer Bereich</a>";
}
else
{
//echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.html\">Login</a>";
header('Location: http://www.google.at');
}
?>
Von da an gehts dann auf die geschütze Seiten, in denen ich folgendes ganz am Anfang eingefügt habe:
PHP:
<?php
session_start();
?>
<?php
error_reporting(E_ALL & ~ E_NOTICE);
if(!isset($_SESSION["username"]))
{
echo "Bitte erst <a href=\"login.html\">einloggen</a>";
exit;
}
?>
Und wie beende ich nun die Session ?
Eigenes Script welches über einen Button aufgerufen wird ?
Oder muss das auf irgendeine Seite ?
Ihr seht - ich bin echt blutiger aber sehr interessierter Anfänger und bitte echt um Hilfe.
Danke schon mal!