Lo sò che è incasinato... non programmo da molto in php/mysql

Poi se utilizzi l'elseif è ovvio che verrà eseguito solamente il codice corrispondente alla condizione vera per cui i controlli sugli altri campi non avverranno mai.
Hai ragione ... che stupido che sono

Come soluzione ho pensato di controllare il contenuto dei campi ... cioè ... se non sono vuoti allora esegui la query , altrimenti dai errore..

codice:
$user=$_POST['username'];
$pass=$_POST['password'];

if ($user!=null and $pass!=null )
{ query }
else { errore }
Oppure c'è qualcos'altro?
Grazie per l'aiuto