A couple of common problems....
1 - the style of line ending is different for Win OS boxes and *nix OS boxes. If you are writing your code on a Win box, and then moving it to a *nix box, you MUST convert the line endings to *nix style. Most gui ftp clients will have a little checkbox or other switch to do this on the fly with the upload. Alternatively, if you can get to a command prompt on the *nix box, you can use the dos2unix utility.
2 - Where Win OSs use the file extension to determine whether or not it is executable (.exe, .bat, etc.), *nix OSs use a set of 'permissions' to tell whether a file is executable. When you move a file from a Win box to a *nix box, you must tell the *nix box that the file is executable. Again, most gui ftp clients can do this with the upload. Or, you'll need to do it from the command line.
3 - You might be making use of a Win OS specific utility that does not exist on the server. Make sure all your code really is portable.
'hope this helps
If you are new to Tek-Tips, please use descriptive titles, check the FAQs, and beware the evil typo.