$HTTP_POST_FILES esta declarada obsoleta se usa
$_FILE en el link que te deje que es la pagina oficial esta informado esto.
Ahora con el problema de la extensión cuando tu traes el $_FILE['campo_archivo']['name']; tienes el nombre original del archivo incluyendo la extension, que pudieras hacer un explode de este para obtener la extension ejemplo
Código PHP:
Ver original$nombre = explode('.',$_FILE['campo_archivo']['name']; $ext = $nombre[1];
de esta manera obtendrias la extension espero aberte ayudado, incluso en el type de esta variable se obtienen los tipo de variable
lo que tendrias es que hacer el explode directamente a esta, yo hice una clase para subir archivos aunque hay bastantes la hice sencillita para un proyectico que tenia y la publique en un
articulo por si gustas verla, saludos