La pagina non da errori ne output (con errori strani)
se abbasso la versione del PHP il codice funziona alla grande

Quelle variabili non le vedi, perche sono definite prima (nelal porzione di codice che non ho integrato)