stronzo
Semiprofi
Thread Starter
- Mitglied seit
- 20.06.2006
- Beiträge
- 1.500
Hallo!
Ich bin kein Experte was PHP angeht, deswegen möchte ich euch mal meine Lösung für einen Login zeigen, der nach Passwort und Benutzerabfrage HTML Code anzeigt. Funktionieren tut eigentlich alles soweit, ich frage mich nur, ob das ganze realtiv sicher ist oder was man verbessern kann.
Also ich habe 2 Scripte und im Endeffekt nur einen einzigen Benutzeraccount.
Das erste Script ist nur das Formular. Ich hätte es auch direkt in HTML schreiben können aber das spielt ja keine Rolle:
Das zweite Script wertet dann aus und gibt ganz am Ende, wenn der Login gültig ist, den HTML Text aus:
Ist das eine brauchbare Absicherung oder lässt sich das jetzt relativ leicht umgehen?
Ich bin kein Experte was PHP angeht, deswegen möchte ich euch mal meine Lösung für einen Login zeigen, der nach Passwort und Benutzerabfrage HTML Code anzeigt. Funktionieren tut eigentlich alles soweit, ich frage mich nur, ob das ganze realtiv sicher ist oder was man verbessern kann.
Also ich habe 2 Scripte und im Endeffekt nur einen einzigen Benutzeraccount.
Das erste Script ist nur das Formular. Ich hätte es auch direkt in HTML schreiben können aber das spielt ja keine Rolle:
Code:
<?php
echo "
<form action=\"check.php\" method=\"post\">
Username:<br>
<input type=\"text\" size=\"24\" maxlength=\"50\"
name=\"nm\"><br><br>
Passwort:<br>
<input type=\"password\" size=\"24\" maxlength=\"50\"
name=\"ps\"><br>
<input type=\"submit\" value=\"Login\">
</form> ";
?>
Das zweite Script wertet dann aus und gibt ganz am Ende, wenn der Login gültig ist, den HTML Text aus:
Code:
<?php
session_start();
$name = $_POST["nm"];
$pass = $_POST["ps"];
$logout = $_GET["logout"];
if ($logout == "true")
{
session_destroy();
echo "Logout erfolgreich<br>Erneut <a href=\"login.php\">einloggen?</a><br>Zur <a href=\"../index.htm\">Startseite</a>";
exit;
}
if(isset($_SESSION['testuser']))
{
loggedin();
}
if(!isset($_SESSION['testuser']) and ($name == "" or $pass == ""))
{
echo "Fehlende Angaben, bitte nochmal <a href=\"login.php\">einloggen</a>";
exit;
}
elseif(!isset($_SESSION['testuser']) and ($name != "testuser" and $pass != "test1"))
{
echo "Falsche Angaben, bitte nochmal <a href=\"login.php\">einloggen</a>";
exit;
}
elseif(!isset($_SESSION['testuser']) and ($name == "testuser" and $pass == "test1"))
{
$_SESSION['testuser'] = $name;
loggedin();
}
function loggedin()
{
echo "Login erfolgreich, los gehts<br>";
echo "<p align=\"right\"><input type=\"button\" size=\"24\" name=\"logoff\" value=\"Logout\" onclick=\"self.location.href='check.php?logout=true'\"></p>";
}
?>
htmltext
Ist das eine brauchbare Absicherung oder lässt sich das jetzt relativ leicht umgehen?