If you're seeing code, you either have your script in the wrong directory on the server, and the server doesn't have the AddHandler .cgi set, in which case you need to move the script to your script directory (probably cgi-bin somewhere on the server). Either that or your script has the wrong extension for executables (some servers are picky about .pl being .cgi and if you don't have an extesion at all, that would probably do it) or the server's not set up to handle scripts at all and just pushes it as text (though if you've run scripts there before, that obviously not the problem).
Also, make sure your shebang line is correct for the server (the line at the top that says #!/server/path/to/perl), if it's a *nix server, you may not need the extension if the shebang is right - depending on your configuration.
Actually, script was in cgi-bin and my server admin said it should've worked - even without an extension; but it didn't!
Still at a loss for this one, I think - thanks for your ideas, anyway.