Eu acho que é porque quando você fecha a conexão com o banco de dados pela primeira vez, você esquece de fazer:
unset($connection);
E então, quando você tenta se conectar ao banco de dados novamente, ele falha porque ainda está definido para a conexão fechada.