Funziona se è abilitato register_globals (pericoloso in termini di sicurezza, sconsigliato da anni, deprecato da tempo ed eliminato a partire da PHP 6), lo short open tag (disabilitato di default) e solo con determinate configurazioni dei privilegi sulla directory di destinazione (ovvero nella maggior parte degli hosting solleverà errori).Originariamente inviato da Luis_Cypher
ma dai il codice funzione benissimo
Senza contare che il rename è inutile visto che è sufficiente utilizzare impostare correttamente i parametri di move_uploaded_file() e/o imagejpeg().