Dein
> my $fname = $q->param ("upload");
> open (FILE, ">../../pics/$fname")
ist ein schwerwiegender Fehler, die Sicherheit betreffend! Und ein Speichern macht auch keinen Sinn wenn der Type nicht passt. MFG
PS: Was File::Type macht weißt Du?