Nun schreibt mir das Programm, dass in der Zeile 14 das ELSE überflüssig sein soll.
Wenn ich das ELSE raus lösche, erhalte diese Meldung zwar nicht mehr, aber nach Eingabe von User und Passwort erscheint eine Notiz das in Zeile 27 (password_verify) was nicht passt. Kann mir bitte jemand helfen. Danke!
PHP
<?php
// Verbindung zur MySQL-Daten aufbauen
$connect = mysqli_connect("localhost", "root", "", "users");
session_start(); // Starting Session
$error = ''; // Variable To Store Error Message
if (isset($_POST['submit']))
{
if (empty($_POST['username']) || empty($_POST['password']))
$error = "Username or Password is invalid";
{
echo '<script>alert("Beide Felder sind erforderlich!")</script>';
}
else
{
// Definieren von $username and $password
$username = mysqli_real_escape_string($connect, $_POST['username']);
$password = mysqli_real_escape_string($connect, $_POST['password']);
// SQL-Abfrage zum Abfragen von Informationen registrierter Benutzer und Ermitteln der Benutzerübereinstimmung.
$query = "SELECT * FROM login WHERE username = '$username'";
$result = mysqli_query($connect, $query);
if(mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_array($result))
{
if(password_verify($password, $row['password']))
{
//return true;
$_SESSION["login_user"] = $username;
header("location:mainpage.php");
}
else
{
// return false;
echo '<script>alert("Falsche Benutzer Daten")</script>';
}
}
}
else
{
echo '<script>alert("Falsche Benutzer Daten")</script>';
}
}
}
mysqli_close($connect); // Closing Connection
?>
Alles anzeigen