Так как нельзя доверять любому вводу от пользователя, то по хорошему надо бы проверить не расширение и не mime (которые могут прийти любые), а собственно содержимое файла. Например - если вы ожидаете изображение jpeg - убедиться что у него есть соответствующие заголовки.