Liebe(r) benutzer19,
ich sehe da ein paar grundlegende Probleme, die auch sicherheitsrelevant sind!
$_SESSION["username"] = $_POST["username"];
Man sieht $_SESSION['username']
später nicht mehr an, dass hier eine Benutzereingabe unbehandelt geblieben ist und daher für SQL potenziell bösartig sein kann.
<div class="abstand_oben"> <input type="text" formaction ="bereits_angemeldet.php" name="username" placeholder="Benutzername" required><br> </div>
Wie man Formularelemente korrekt verwendet, findest Du in unserem Wiki: Formulare/Beschriftungen mit label
$userid = mysql_query($mysqli, "SELECT ACCOUNTID from accounts WHERE USERNAME = '$_SESSION['username']) .' " );
Hier sehen wir, wie ein ursprünglicher $_POST
-Wert, also eine Benutzereingabe(!!), auf Umwegen (über ein Umkopieren nach $_SESSION
) in seiner unbehandelten Form direkt in eine SQL-Query eingefügt wird. Da fehlt die unerlässliche kontext-gerechte Behandlung!
Man kann nur von Glück reden, dass Dein Code so noch nicht lauffähig ist, sonst wäre diese Sicherheitslücke ausnutzbar.
Liebe Grüße
Felix Riesterer