un consiglio...io non passerei mai al mio database dei campi senza averne prima controllato la correttezza formale in php..

Nella verifica dell'esistenza dell'utente nel database passi alla query direttametne $username e $password senza controllare se queste contengano dei dati che possono generare codice malevolo il che non è troppo bello...