Prima modifichi la password con
htmlspecialchars() e poi ne fai un hashing MD5? Rischia di modificarti la password e cambiare l'MD5 in output (anche se i caratteri interessati sono abbastanza inusuali per una password).
Se ne fai l'hashing MD5, per la password non serve proteggerti dalle SQL injections (non arriveranno mai apostrofi e schifezze varie nella query), mentre lo devi fare per il nome utente, e per quello usa
mysql_real_escape_string().
ciao
EDIT: d'oh, non avevo letto la parte dell'MD5 scritta anche da Fibrizio. Vabbe', un post in più per ricordartelo.