Ma $vecchio_filename contiene il percorso ?

Allora dovresti fare così

fwrite($fp, file_get_contents($vecchio_filename));