in reply to Funny if else problem

You really should check to see if you're opening the file at all. I can't tell by your post if you meant the if statement didn't work at all (as in, it wasn't doing anything), or that it was only executing one part of the if statement.
open FILE, $currentfile;
This does nothing if the system can't find the file, and if it can't get the file, obviously the rest of your program won't work.
open (FILE, $currentfile) or die $!;
This will let you know if the file can't be opened. The same goes for your opendir before that. If you still can't get the if statement to work properly, then it may be the if statement itself, or one of the many other problems boo_radely pointed out.