Ręcznie dodajesz spacje wokół swojej nazwy użytkownika, aby wyglądało na to, że nie istnieje:
$query = "SELECT * from User WHERE username=' ".$username." ' ";
^ ^
Powinno być:
$query = "SELECT * from User WHERE username='".$username."' ";
Użycie przygotowanego oświadczenia pozwoliłoby uniknąć tego problemu i potencjalnych problemów z wstrzykiwaniem sql za jednym razem:
$query = "SELECT * from User WHERE username=?";
Upewnij się również, że konsekwentnie używasz nazw tabel i kolumn:User
niekoniecznie oznacza user
.
Pamiętaj też że nigdy nie należy przechowywać haseł w postaci zwykłego tekstu w bazie danych, należy sol i mieszaj .