Supportnet / Forum / Skripte(PHP,ASP,Perl...)
PHP Login mit mySQL - eine Funktion fehlt mir noch
Frage
Zuerst der Code
[code]
<?php
if ($username=="")
{
require("./header.php");
echo"KEIN BENUTZER ANGEGEBEN!";
require("./footer.php");
exit;
}
mysql_connect("localhost","username","password");
mysql_select_db("dbname");
$sql="select * from member where username='$username'";
$result=mysql_query($sql);
while($row2=mysql_fetch_array($result))
{
if (!$username)
{
require("./header.php");
echo"$username, Du existierst noch nicht in der Datenbank.";
require("./footer.php");
exit;
}
if ($username==$row2[username] && $password=="")
{
require("./header.php");
echo"$username, bitte Passwort angeben.";
require("./footer.php");
exit;
}
if ($username==$row2[username] && $password!=$row2[password])
{
require("./header.php");
echo"$username, Dein Passwort ist falsch!";
require("./footer.php");
exit;
}
if ($username==$row2[username] && $password==$row2[password])
{
setcookie("username","$username",time()+60*60*34*30);
setcookie("password","$password",time()+60*60*34*30);
require("./header.php");
echo"$username, Du bist eingeloggt. <br>
Um Dir bei zukünftigen Besuchen das Einloggen zu ersparen, wurde ein Cookie gesetzt.";
require("./footer.php");
exit;
}
}
?>
[/code]
Jetzt fehlt mir nur noch eine Funktion. Wenn in das Login Formular, absichtlich oder unabsichtlich, ein in der Datenbank nicht existierender Username eingegeben und abgesandt wird, das dann eine entsprechende Meldung ausgegeben wird.
Ich appelliere an die PHP-Experten im Supportnet, denn dann ist mein Login perfekt - genauso wie ich ihn haben möchte.
Ich hoffe, ich habe mich richtig ausgedrückt. Sonst einfach Fragen stellen.
Gruss Tim
Antwort 1 von Timmy
Es muss doch irgendeinen Befehl dafür geben.
Gibt man einen Usernamen an, der nicht in der Datenbank steht, läuft das Script ins Leere.
Was muss ich machen?
Gibt man einen Usernamen an, der nicht in der Datenbank steht, läuft das Script ins Leere.
Was muss ich machen?
Antwort 2 von semi
...
$result = mysql_query(
"SELECT * FROM member "
."WHERE username='$username'"
." AND password='$password'"
);
// Wenn kein entspr. Benutzer gefunden
if(mysql_num_rows($result)==0) {
echo "BlaBla";
exit();
}
...