Jeg tror, det er fordi, når du lukker databaseforbindelsen første gang, glemmer du at gøre:
unset($connection);
Og så når du prøver at oprette forbindelse til databasen igen, går den i stykker, fordi den stadig er indstillet til den lukkede forbindelse.