7 hab ich gefunden, will aber nicht aussschließen, daß es noch mehr gibt.
(PS: Keine verbesserungsvorschläge, ich behalte dieses sowieso )
Wieso fragst Du dann?
Ich liefere trotzdem einen weiteren Fehler - und zwar einen Designfehler
- Warum prüft nicht die Datenbank direkt beim SELECT auf username und passwort?
Wozu macht das PHP?
SELECT COUNT(username) WHERE username = 'user' AND password = 'pass';
Wenn 1 Datensatz zurückkommt, passt die Sache. Wenn 0 Datensätze geliefert werden, ist das Login ungültig, der Benutzer existiert nicht oder das Passwort ist falsch[1] - sollten 2 oder mehr Datensätze geliefert werden, hast du einen Fehler im System.
[1] diese Information hat den, der den Loginversuch tätigt aber nicht zu interessieren). Lustige informationen wie "Benutzername gibts nicht" oder "Benutzername richtig aber Passwort falsch" helfen bei Brute-Force-Attacken ungemein.