guarda che il die() viene eseguito quando la query è sintatticamente scorretta, ad esempio se cerchi di fare un controllo su un campo che non esiste.
Se inserisci un nome utente sbagliato, la query viene eseguita - ed è corretta. Solo che restituirà zero righe.
Dovresti fare il controllo sul numero di righe restituite con myqsl_num_rows e vedere se ritorna zero o uno (o più).