...forse mi sono espresso male..
cosa dice l' echo di $file ?...cioè qual'è il percorso contenuto in $file?
e qual'è l' echo di $fn ?
...se vuoi, posta gli errori, anche se da quel che ho capito riguardano situazioni derivate da una modifica del codice originale (che è quello da correggere)