Cuando se sube un archivo se crea un array en $_FILES['nombre_del_campo'] con cuatro elementos: name, type, size, tmp_name. Lo que deberías validar es que type sea una imagen, con algo como..
Código PHP:
$mime_types = array(
"image/gif",
"image/jpg",
"image/jpeg",
"image/pjpeg",
"image/bmp",
);
if (in_array($_FILES['upload'],$permitidoes)) {
//subir el archivo
} else {
die("tipo de archivo no soportado");
}
Más sobre "gestión de archivos" en
http://ar.php.net/manual/es/features.file-upload.php