Você deve estar verificando e consultando o banco de dados para uma correspondência, não reduzindo os resultados e verificando-os localmente. Com isso dito:
$password = md5($_POST['password']);
Então mude também:
SELECT * FROM users WHERE username='$username' AND password='$password'
Mas eu também daria uma olhada no uso do PDO em vez de colocar os valores diretamente em uma consulta SQL. No mínimo, você deve usar
mysql_real_escape_string
para evitar ataques de injeção.