Ich mache eine PHP-Anmeldung und es hat vorher funktioniert, aber ich habe versucht, das Benutzername-Feature unabhängig von Groß- und Kleinschreibung zu machen, und der Code hat seitdem nicht funktioniert. Ich habe alle Sachen gelöscht, die ich hinzugefügt habe, um zu versuchen, es case-insensitive zu machen, d. Strtolower(). Alles, was auf der Seite angezeigt wird, ist "Bitte geben Sie einen Benutzernamen und ein Passwort ein." aber ich habe eine html-datei, die erscheinen soll und die login anzeigen soll. Hier ist der Code (habe ich die persönliche Datenbank Informationen in der mysql heraus verbinden Bereich):PHP Login-Problem; unbekannt
<?php
session_start();
$username = $_POST["username"];
$password = $_POST["password"];
if ($username&&$password)
{
$connect = mysql_connect("","","") or die("No Database");
mysql_select_db("") or die("Couldn't find database");
$query = mysql_query("SELECT * FROM login WHERE username='$username'");
$numrows = mysql_num_rows($query);
if($numrows !=0)
{
while ($row = mysql_fetch_assoc($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if ($username==$dbusername&&$password==$dbpassword)
{
echo "Login succesful. <a href='/memberarea.php'>Members</a>";
$_session['username']=$dbusername;
}
else
echo "Incorrect Password";
}
else
die("Username does not exist");
}
else
die("Please enter a username and password.");
?>
Sie sind weit offen [** SQL-Injection **] (https://www.owasp.org/index.php/SQL_Injection). Fügen Sie auch einige Leerzeichen in Ihren Code ein. '$ username && $ password' ist unglaublich schwer zu lesen. –
Sehen Sie einen Fehler, der das nur auf die Seite bringt? http://prntscr.com/atldqb –
Sie müssen auch die Seite vor dieser, die den Benutzernamen und das Passwort akzeptiert, wie es dort ein Fehler dort ist, dass es nicht die $ -POST-Parameter festgelegt werden soll. (Oh, und das Speichern des Benutzernamens in einem Session-Cookie ist eine * sehr * schlechte Idee!) –