prova a fare un
echo $dirname.$file;
e guarda com'è il percorso.
Se ti viene ".../cartella1/cartella2nomefile.gif" non va bene, devrobbe essere in formato ".../cartella1/cartella2/nomefile.gif"
Puo essere che devi fare questa sostituzione:
$dirname . "/" . $file
Ciao!