There are a lot of ways you could do this I suppose...
Depending on what system the webserver is on you could have a form post to a script that runs an exec() command to actually use the ftp client on the host machine to do the uploading...
Or you could make a sort of "web locker" where the script uploads the file to the web server and makes it accessible that way...
The first example I have chosen is probably more what youre looking for...
Have a form with the ftp address, username, password, file post to a script that executes a command on the server that will run a command prompt version of an ftp client, it wont be very portable, but im sure it would work fine...
I know the windows dos ftp command is simply "ftp" with some set of parameters
the unix/linux command highly depends on what version of linux it is and what packages are installed...youd have to do a little research