Elalux, además del error obvio (digo obvio por contestar sin verlo antes jeje) en el nombre del campo, ChocoMan no usa $_FILES seguramente por confiar en register_globals para recibir los datos del archivo subido, de ahí el uso de $archivo_name en vez de $_FILES['archivo']['name']
En fin, agrego esto para compensar