PHP login-script

som3

Lieutenant
Registriert
Jan. 2010
Beiträge
992
Hallo.
Habe mir ein kleines Login Script gebaut.
Allerdings wurmt es mich gerade das es nicht geht:(

Die Nachricht die eigentlich erst ausgegeben werden soll wenn man Passwort und Namen richtig eingegeben hat kommt von Anfang an.

Hier das ganze in live: http://contract.officialtcn.com/

Danke
Gruß Som3

PHP:
<html>
<head>
<title>Contract</title>
</head>
<body>
<form action="index.php" method="post">
<table border=1>
<tr>
<td>Username:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>----> </td>
<td><input type="submit" name="senden" value=Login></td>
</tr>
</table>
</form>

<?php

$username = "test";
$password = "testpw";

if (($benutzer == "$user") and ($passwort == "$pass"))
{
echo "

You did it!

";
}
else
{
echo "Wrong Username / Password";
}
?>
</body>
</html>
 
Alle deine Variablen, die du in der if-Anweisung abfragst, sind leer/undefiniert - und damit auch identisch. Also sind die beiden Bedingungen für Benutzer und Passwort/d wahr.

Die beiden Variablen $username und $password, denen du Werte zuweist, verwendest du danach gar nicht weiter.
 
Üb etwas systematischeres Vorgehen. Du scheinst irgendwie mindestens 3 verschiedene Variablen für denselben Zweck zu benutzen. %-)
 
Schon erwähnt, aber nochmal im Detail: Du verwendest 6 Variablen.

$username = (string)"test"
$user = null
$benutzer = null

$password = (string)"testpw"
$passwort = null
$pass = null

Für Passwörter übrigens den strikten Vergleichsoperator "===" verwenden. Sonst gibt es zu viele Passwort-Möglichkeiten, die die Anforderung erfüllen.

Und noch etwas: Du fragst die eingegebenen Daten NIEMALS ab. Man kann sich also nie einloggen. Die Daten, die du haben möchtest (aus dem Formular) liegen nach dem abschicken in der Variable

(array)$_POST
konkret: $_POST['username'] und $_POST['password']

Mit diesen Hinweisen sollte sich schon etwas sinnvolleres anfangen lassen. Noch ein Hinweis: Passwörter werden trotzdem im Klartext übertragen. Also sicher ist diese Methode nicht ;)
 
Danke jetzt gehts =)

@SoDaTierchen
Natürlich ist es nicht Sicher. Aber einfach.
Es soll ja nur ein Vertrag geschützt werden. So das man ihn nur sehen kann wenn man das Passwort hat.

Ich würde es auch gerne mit md5 hashes aus einer Datenbank oder txt Datei (die per htaccess geschützt ist) aber das würde ich aber selbst nicht hin bekommen^^
 
Schütz den Vertrag doch per .htaccess/htpassword.... das ist deutlich effektiver als dein komisches PHP-Gebastel und ist außerdem in 2-3 Minuten erledigt.
 
habs damit versucht, ging nicht also habe ich einfach schnell das PHP Script gebastelt.
ging ja genauso schnell.
 
Zurück
Oben