Pero .. si el resto del script funciona .. asumimos que obtienes bien $archivo (asumiendo como global .. cosa que para nada es recomendable .. deberias usar $_FILE['archivo']['propiedad'] si usas PHP 4.1.x o superior).
Estas seguro q:
Código PHP:
echo $archivo_name; // obtienes el nombre del archivo?
echo $archivo_size; //obtienes algun valor?
A todo esto .. para conocer el tipo de archivo q has subido puedes usar el parametro:
$archivo_type
Eso te dará el formato MIME del archivo subido (independiente de si tienes una u otra extensión .. Es dedir .. si le metes un .jpg pero es un .gif cambiado de nombre la extension .. $archivo_type dirá q es un .gif). Lo que entrega _type es el formato MIME de la forma categoria/sub-categoria (por decirlo de alguna forma): ejemplo image/jpg .. image/gif .. image/png .. text/plain .. etc.
Sería recomendable que guardases ese dato de formato MIME en tu BD. (te sería util si usases para mostrar las imagenes por ejemplo cabeceras HTTP via header("content-type: MIME_formato"); ....)
mas info .. donde siempre:
http://www.php.net/manual/en/features.file-upload.php
Un saludo,