Quita el @ a tu función copy() .. eso oculta los mensajes de error que pudiera probocarse en esa función .. no debes usarlo en fase de "desarrollo".
Cita: me arroja siempre algo asi: C:/Php/uploads\php4A6.tmp
Esto es normal .. Y de hecho te dice que el "Upload" se ha efectuado. Ahora faltará ver si tu copy() funciona correctamente tras pasar ese montón de validaciones sobre el archivo (tamaño, extension .. etc) que haces.
Un saludo,