Eigentlich will ich ein einfahches Php, Flatfilebasierendes Loginsystem schreiben. Aber irgendwie haut das noch nicht so ganz hin. Sry is wohl eher ne Noob Frage, aber konnte da zu irgendwie nichts finden ;p
Erklärung:
$pw1 und $pw2 sollen verglichen werden. Wenn sie gleich sind kommt man (später noch mit Einbezug der Postdaten) weiter - wenn nicht, dann taucht eine Fehlermeldung auf der Site auf.
$pw1 :: Ist das Passwort das vom Benutzer gerade eben zur Login eingegeben wurde. Wird per Post aus einem Formular (Benutzereingabe) an die aktuelle php Seite geschickt. $pw1 besteht aus einem 4-stelligen Zahlenwert. Ist also, das Passwort das auf Richtigkeit geprüft werden soll
$pw2 :: Wird aus einer Textdatei abgelesen, die bei der Registrierung des Benutzer erstellt worden ist. Ist ein bei der Registrierung zufallsgenerierter 4-stelliger Zahlenwert. Ist also, das richtige Passwort des Benutzerkontos
Was bisher passt:
$pw1 und $pw2 werden definitiv eingelesen. Als Test hab ich die beiden Variablen mal per echo wiedergegeben. Beide hatten in meinen Fall den Wert "8224" und "8224" - der Wert war also gleich.
Denach müsste if($pw1 == $pw2) zutreffen, trotzdem wird das Ergebniss von if($pw1 <>$pw2) ausgegeben.
Was mich irritiert ist, dass trotz allem der Script nicht funktioniert:
meine vermutung: wenn ich if($pw1 == $pw2) ansehe werden anscheindend die Namen der Variablen verglichen und nicht deren aktueller Wert. Als Beispiel hab ich statt $pw1 einfach mal $pw2 angegeben, oder beide durch irgendeine gleiche Zahl etc ersetzt- damit funktionierte dann.
Aber wie bekomm ich es hin, dass der Wert der Variable (d.h. 8224 u. 8224) verglichen wird und nicht der Name (d.h $pw1 u. $pw2) verglichen wird?
Grüße Twentytwo
Code:
if($pw1 <> $pw2){ echo " <b>Login Error!</b> <br><br> :: The entered Username or Password has not been correct. $name $pw1 $pw2<br> :: Click on this <a href='./login01.php'><u>Link</u></u></a> to try it again."; } if($pw1 == $pw2){ echo " <b>Login complete!</b> <br><br> :: Click on this <a href='./login03.php'><u>Link</u></u></a> to edit your profile."; }
$pw1 und $pw2 sollen verglichen werden. Wenn sie gleich sind kommt man (später noch mit Einbezug der Postdaten) weiter - wenn nicht, dann taucht eine Fehlermeldung auf der Site auf.
$pw1 :: Ist das Passwort das vom Benutzer gerade eben zur Login eingegeben wurde. Wird per Post aus einem Formular (Benutzereingabe) an die aktuelle php Seite geschickt. $pw1 besteht aus einem 4-stelligen Zahlenwert. Ist also, das Passwort das auf Richtigkeit geprüft werden soll
$pw2 :: Wird aus einer Textdatei abgelesen, die bei der Registrierung des Benutzer erstellt worden ist. Ist ein bei der Registrierung zufallsgenerierter 4-stelliger Zahlenwert. Ist also, das richtige Passwort des Benutzerkontos
Was bisher passt:
$pw1 und $pw2 werden definitiv eingelesen. Als Test hab ich die beiden Variablen mal per echo wiedergegeben. Beide hatten in meinen Fall den Wert "8224" und "8224" - der Wert war also gleich.
Denach müsste if($pw1 == $pw2) zutreffen, trotzdem wird das Ergebniss von if($pw1 <>$pw2) ausgegeben.
Was mich irritiert ist, dass trotz allem der Script nicht funktioniert:
meine vermutung: wenn ich if($pw1 == $pw2) ansehe werden anscheindend die Namen der Variablen verglichen und nicht deren aktueller Wert. Als Beispiel hab ich statt $pw1 einfach mal $pw2 angegeben, oder beide durch irgendeine gleiche Zahl etc ersetzt- damit funktionierte dann.
Aber wie bekomm ich es hin, dass der Wert der Variable (d.h. 8224 u. 8224) verglichen wird und nicht der Name (d.h $pw1 u. $pw2) verglichen wird?
Grüße Twentytwo
Kommentar