per come è scritto il codice, risulta un po' ridondante, io applicherei la condizione solo sul pezzo " class="alert alert-success" | class="alert alert-danger" " ti verrebbe più leggibile
un consiglio spassionato, quando usi if ed elseif, cerca di prevedere anche il caso di else, questo perchè non sia mai la variabile non avesse il dato che ti aspetti potresti salvarti da un possibile "errore"
altra cosa nel confronto tra stringhe ti suggerisco sempre strcasecompare, eviti che si possa rompere se ci sono uppercase o cose simili! ricorda verifica sempre il tuo tipo di dato, è importante.