Fehler in Login-Script
Carl
- php
0 Klaus0 Peter Thomassen
Hi
hab ein kleines Problem mit nem einfachen login-script.
Ich gebe das Passwort und den Usernamen so wie es in der db steht ein, aber ich bekomme immer die fehlermeldung:
Falscher Loginname bzw. Passwort, bitte versuche dich erneut einzuloggen.
hier mein script:
<?
if (mysql_errno())
{
die("<br>" . mysql_errno(). ": ".mysql_error()."<br>");
}
if (!empty($username) && !empty($passwort))
{
require("db_connect.php");
$query = "SELECT user, pw FROM users";
$result = mysql_query($query);
if (mysql_errno())
{
die("<br>" . mysql_errno(). ": ".mysql_error()."<br>");
}
while ($row = mysql_fetch_row($result))
{
if (mysql_errno())
{
die("<br>" . mysql_errno().": ".mysql_error()."<br>");
}
if ($username==$row[0] && $passwort==$row[1])
{
setcookie("$username", "$passwort", time()+3600);
echo "<br>Login";
}
else
echo "<br>Falscher Loginname bzw. Passwort, bitte versuche dich erneut einzuloggen.";
}
}
else
echo "<br> Bitte fülle alle Felder aus.";
?>
Ich vermute mal, da ist irgendwo der wurm drin aber ich finde ihn nicht :(.
Gruss
Carl
Hallo Carl,
klappt den deine Passwortüberprüfung, wenn du die Fehlerabfang-ifs rausnimmst?
Gruß Klaus
Hallo
if (!empty($username) && !empty($passwort))
anstatt !empty() kannst du doch viel besser isset() nehmen...
weiß nicht ob da der fehler liegt (wie klaus schon sagte), versuch doch sonst da mal
if (isset($username) && isset($passwort))
drauszu machen...
Grüße
David
Hallo
klappt den deine Passwortüberprüfung, wenn du die Fehlerabfang-ifs rausnimmst?
nein klappt nicht. habs jetzt mal versehentlich kurz so drinstehen gehabt: if ($username=row[0] && $passwort=row[1])
da hat es dann geklappt...
Gruss
Carl
Hallo Carl,
while ($row = mysql_fetch_row($result))
{
if (mysql_errno())
{
die("<br>" . mysql_errno().": ".mysql_error()."<br>");
}
if ($username==$row[0] && $passwort==$row[1])
{
setcookie("$username", "$passwort", time()+3600);
echo "<br>Login";
}
else
echo "<br>Falscher Loginname bzw. Passwort, bitte versuche dich erneut einzuloggen.";
}
Du solltest evtl. aus der Schleife springen, sobald der Login
erfolgreich ist, hm?
BTW: Dein mysql_query()-if()-Konstrukt kannst Du vereinfachen:
mysql_query(...) or die(...);
Bye,
Peter